|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # J+ }) ]) G" w3 a
- _6 X8 d. D; T4 S0 i" G' A! A+ l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" a2 S7 L) `7 k# F4 d# S+ D Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 u+ J# V8 U. y! t
swarm.SignatureNotFoundException' U2 J; V+ _! q6 \
at swarm.Selector.<init>(Selector.java:76)
# z7 C' W' s( ], Q4 J0 C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 i2 r# ~, G; k; n C at ActionGroupDemo.main(ActionGroupDemo.java:67)5 N# \/ i# X3 Y" a
7 ]) t# B$ \7 k1 }& a- p
* h4 Q, m7 F7 Y6 R! D8 i
import swarm.objectbase.SwarmImpl;6 m. R1 d: o# c
import swarm.objectbase.Swarm;( D3 r, N1 A( l6 w
import swarm.activity.ScheduleImpl;% F+ q. y( m* H$ ? C* w0 _
import swarm.activity.Activity;- O" ^+ _2 J" o! j; y2 C+ @8 y! a4 R
import swarm.activity.ActionGroupImpl;; V/ I. d) y# s4 e* @9 p1 F! m- L' W8 |
import swarm.collections.ListImpl;
+ X6 {1 D$ ?1 T% |+ Iimport swarm.defobj.Zone; 1 M) T+ O# \. `' N7 F5 t4 b# v+ M
import swarm.Globals;
( o5 z# q" ] o V4 b! Ximport swarm.Selector;
: d) O* O k( O$ u, t3 j2 Nimport swarm.activity.ActionGroup; + r4 w: w9 k2 O+ K, }, N. ]9 S
class Agent {
4 z+ ^ A3 }- n* z char id;
7 _' C% U' {' a/ A* b( a; T7 G" C9 P! M3 u0 J
Agent(char id) {3 W( u; Z- ?+ i; S) ^4 E1 u
this.id = id;
% {, z/ F7 z' r }
# M, g" p$ L2 g. Y I* X, q
' i. J8 J6 i* Z public void agentStep() {
& o8 Q ~! Q6 Z4 Y; u' i System.out.println(id + ":" + Globals.env.getCurrentTime());
- g8 N) Q7 b! M }# C/ w0 X# s3 B7 p" O
}+ d0 c) R' n+ k9 U; p5 I6 P
: t- o6 D) N; Y. g" S
public class ActionGroupDemo extends SwarmImpl {
0 d3 S4 p7 _2 _5 M8 N- y5 Y ScheduleImpl schedule;
7 J: P& M$ H$ Y, @6 V/ _2 i3 @7 R" L ActionGroupImpl actionGroup;
2 x+ N1 a1 F% q. S" z. ?* J ListImpl list;, p3 j: W4 T; E) `* g b2 a
char Id = 'a';6 @8 a S$ a4 |& F$ j
' u+ ?, Y0 U; e' w: C ActionGroupDemo(Zone aZone) {
/ J E+ q: x2 f! l* @ super(aZone);) b$ A3 K' X" z7 g) z1 R$ E/ m
list = new ListImpl(aZone);
/ r' W: m) D3 b. ? A! U swarmSetp();5 ^, y9 m7 L- X% l8 }3 I9 p$ E: J
actionGroup = new ActionGroupImpl(aZone);0 W$ I% E5 B: m9 x
schedule = new ScheduleImpl(aZone);2 w4 i$ B8 _7 g! f1 Q( j: F
try {, I% N; B5 [5 K3 H4 E6 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 P4 K# P V+ ]7 l9 a; \8 w
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 h9 z* S. m5 v5 D
; f' Q" H' C7 K" w. y# z$ @
actionGroup.createActionForEach$message(list, agentSel);9 I/ X) t* r* X3 Q+ T
actionGroup.createActionTo$message(this, swarmSel);& W2 M) g- g4 u" V! u- [
schedule.at$createAction(0, actionGroup);% |( G T3 |/ x) x! S
schedule.at$createAction(1, actionGroup);
; E+ I% ^4 c9 {4 t schedule.at$createAction(2, actionGroup);) B/ y, R; U, G
% ]0 F) ~. z+ B' p' z } catch (Exception e) {
" _! \" q( X% }) V e.printStackTrace(System.err);2 `' {: z8 t, m# r/ Y
//System.out.println(e);
5 w' ]) \* @- \6 f$ N ?' k System.exit(1);
Q' t; p+ o# X: ~: P" @2 N9 ? }& G b# }3 d/ S' U0 }
& \# u! c) F; L
4 U$ E; q/ b$ H1 Y) @. q7 U
}6 I$ a8 e( j/ L% k% e
0 b. x3 |1 M) A" P private void swarmSetp() {
2 Z/ s# Y0 ?; V* M9 x" Q list.addLast(new Agent(Id));
2 A2 y: J+ z7 A: Q# R4 u Id++;/ Q! i6 v9 T% P9 }- J# G
} p* Q4 R7 q/ i# T- f
- {( z, v) r, K- L g8 Z5 v& {+ o1 Y5 y public Activity activateIn(Swarm context) {
8 C! g1 _& F% Z/ T- k0 D5 f* G super.activateIn(context);" L8 [/ t9 \3 b5 S* z
schedule.activateIn(this);$ A# }% |9 q0 l* e4 {# ?: X7 W; \
return getActivity();9 T7 c7 v5 L& h6 X6 b {
}
# S: w0 r1 D( m8 |/ T4 {( {% \
, S& |0 l* O. ~- d$ A# E+ ^ public static void main(String[] args) { b# L* i3 D: Y, v P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# B3 G2 y4 e$ ^9 L9 {, @0 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" R9 v' ?8 t/ j swarms.buildObjects();$ n1 `/ q+ `* @, i/ h9 }
swarms.buildActions();
/ h! C* a' v1 q& ]. |6 ? swarms.activateIn(null).run();8 }* k6 p D/ D2 d- {& i! t/ @
}( z+ L% M) B9 D5 _+ Q" o
8 w2 V% A) ?, v0 y, J1 J, [
} |
|