|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; `1 x( [) e! l4 Y3 z s( X
7 E* v: N7 y, e1 ?) X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 A3 @5 i$ ^- T( a& q& T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' n% A+ N/ I3 e- O6 ~# q+ Oswarm.SignatureNotFoundException9 a+ R% R% C$ S2 U" V
at swarm.Selector.<init>(Selector.java:76), D! N6 Z$ k: T3 S, O @3 d+ p/ K
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 m" x7 M7 J; y' g
at ActionGroupDemo.main(ActionGroupDemo.java:67)$ a/ V5 Q$ y& {7 }4 m
% z3 p8 N) Y5 N" P9 H$ m W! y
/ A7 Y- ]! J/ ]7 n2 _& L) cimport swarm.objectbase.SwarmImpl;
. ? l8 K0 q* M/ k& b5 aimport swarm.objectbase.Swarm;
6 l# Y) v9 H) l( g3 B7 z& t( s& ^import swarm.activity.ScheduleImpl;+ e$ L1 i& X8 t$ N8 P; K
import swarm.activity.Activity;
6 u: G; N7 Z N0 C5 {2 Cimport swarm.activity.ActionGroupImpl;8 \5 \) C9 |; o2 Z5 U6 t
import swarm.collections.ListImpl;
6 O5 |2 e' K- E$ yimport swarm.defobj.Zone;
. A) L! q/ c+ X5 i! m7 Ximport swarm.Globals;
4 Y7 E, i/ o; q. r) e" o4 }" T6 Ximport swarm.Selector;
! u2 Y r/ e" o! `, i1 D+ }: Pimport swarm.activity.ActionGroup; $ w) }, k6 `9 G! Y
class Agent {
2 Y# Z v k+ A. @/ \+ \6 t% r char id;/ u$ K d8 ~) U
$ T5 E# ?' W. e# Z1 I/ m9 N5 X
Agent(char id) {
) y0 Q' |0 w5 M; @ this.id = id;- y( L* _" G6 _& J- G. {9 \
}7 o, L" P( `# b* K( X
) ?2 g8 ~( i7 W
public void agentStep() {$ W6 e( I, \$ f$ x& w" d
System.out.println(id + ":" + Globals.env.getCurrentTime());8 a5 t! l+ s& D2 W. v. {
}; v* n8 N9 w+ n/ c4 f! H
}4 }+ A% w( s- t) T% ?
3 p! e% X; p: G7 C/ U2 f7 J6 y( \
public class ActionGroupDemo extends SwarmImpl {8 y$ l& F) \( u2 `5 I. A( D
ScheduleImpl schedule;
8 B: r3 [& w3 _7 T7 O& Y* ? ActionGroupImpl actionGroup; r+ x" j. t2 t; {7 D
ListImpl list;" e; s @0 E" z
char Id = 'a';; l* M% m# w5 Y9 ^
2 ^' m, o. _# w% C
ActionGroupDemo(Zone aZone) {9 Y+ p' G+ N6 E
super(aZone);
+ O. a7 h0 T. @0 D6 ~% P0 {% V list = new ListImpl(aZone); c3 `$ A1 n( T" a. b
swarmSetp();! J! S7 P9 F; E1 ^* [# |7 u
actionGroup = new ActionGroupImpl(aZone);
, \% H q8 [ B. B/ L, }6 Q0 d @ schedule = new ScheduleImpl(aZone);
) j9 @+ j L Q# z+ S) z+ g try {
) V% h# J7 O% q8 E+ F. U2 z Selector agentSel = new Selector(Agent.class, "agentStep", false);
, S8 H/ `$ A5 W5 o4 c! T* x: \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' t/ I+ f( h3 `0 z : q* S, p* v, U
actionGroup.createActionForEach$message(list, agentSel);" n1 Y( Z' v# S1 {
actionGroup.createActionTo$message(this, swarmSel);
, U/ x, ^& @- J schedule.at$createAction(0, actionGroup);
% I( e; Q0 k9 |5 Z$ J schedule.at$createAction(1, actionGroup);
& e0 Q0 V: }3 N; Q' a schedule.at$createAction(2, actionGroup);
1 M) N) G4 V: T1 t3 X
- ^7 ?2 s0 k3 ] } catch (Exception e) {
+ |6 [7 N) j9 Q. Q e.printStackTrace(System.err);
: m0 w# j8 ~7 F/ f3 S+ u* f //System.out.println(e);
7 o$ I' M6 Q/ Y6 o/ G3 f System.exit(1);
% _7 G& ]. r d } n7 Q4 M1 p/ o. @( b7 y9 Y
3 V l) X1 V- f
9 V* h% Q$ {* |& {, d }+ t, q9 P0 y! K+ i- `' a* s
) y6 h5 P& }4 d private void swarmSetp() {
5 O8 J% F. A* {, V8 ?& K5 E- _6 _: I list.addLast(new Agent(Id));0 m0 q' q6 i. @9 u; Q; [: F2 O
Id++;
1 p5 j) B& m7 m }
/ Z# S' D9 E7 f+ D' N; O* W6 m8 x: |: g+ L R- Y8 e8 F
public Activity activateIn(Swarm context) {
7 U1 J" c; F3 m/ B* @, ~ super.activateIn(context);; ?* B# M% C+ T& u' e1 f
schedule.activateIn(this);% H) F. N# A: ^5 Z/ i# K* S
return getActivity();1 E2 B6 B% S6 E$ L) ]: ]1 Y8 T
}
5 r- w" }0 @; {. P) X: m- E
3 f7 o. \6 N6 G9 O/ a public static void main(String[] args) {* d4 J5 A3 ?" B2 }
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( t6 L- ?) h8 f% n# [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 V" W! N2 ]6 k7 ?' `, l7 N! J
swarms.buildObjects();
! ?' k; [+ {1 e0 \ R( D swarms.buildActions();5 w# } z4 z y: y) k! E0 ~
swarms.activateIn(null).run();
3 @9 [ @- N6 s2 g: |+ P }( e- h. B* A! Z
?2 I) V4 U2 h} |
|