|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! V+ T; u3 H1 }( @
4 }, W+ X* s5 W, ^; u9 B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 _) c- R; f& f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' G+ c3 x0 I. i; T* r/ U. y% _. J
swarm.SignatureNotFoundException* @* S G8 W! |$ E
at swarm.Selector.<init>(Selector.java:76)! u& I* N: N6 h7 G6 D( N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 z2 D6 V( i/ R8 T8 c, U
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, @4 |8 O% n# T
) j% b2 b6 J6 H2 {1 E: t; F, O! V
% ]2 f+ y) n+ X0 J$ C6 qimport swarm.objectbase.SwarmImpl; U; ?% ]0 m7 @, F
import swarm.objectbase.Swarm;7 k2 z9 W4 b& v/ y/ q* B! C1 S; j$ ~
import swarm.activity.ScheduleImpl;
7 x, o3 Z8 Z+ Q [* pimport swarm.activity.Activity;
8 O" h+ {3 O7 G, `& Uimport swarm.activity.ActionGroupImpl;
) I7 T! ?4 \% G4 f. S1 V6 bimport swarm.collections.ListImpl;5 ]% G# I: @9 E8 @- A7 P
import swarm.defobj.Zone;
0 _+ o' v3 d. R' pimport swarm.Globals;' p% o5 f: d) H- j3 Y: ?! W, Q& i' ^
import swarm.Selector;
) W. i. X5 J/ n& ]' M: nimport swarm.activity.ActionGroup;
5 q( j) x3 D! [5 ]% fclass Agent {
+ [6 I$ I) t" T; b6 N! a" f& p char id;9 E* Z9 w$ u+ \
0 f; f( K( Q" ?; p
Agent(char id) {- w+ h) h, `) J: S; s. S
this.id = id;8 S6 k" Q: [/ E( m- g3 b4 v2 E6 a) ^8 m
}
2 a, |' D$ C4 v, l: I6 ?6 i. p. u
0 k9 D6 Y6 z. o& T" z% m: Y7 E+ R8 D public void agentStep() {- _) Y& A; ]* p4 d1 E+ Q# V9 @2 K
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 ?: [+ G k! l: Y }5 Y# H) P* }8 e' m- J) s" r
}) N2 [- l" ^6 J7 x. k7 L( G5 ]. N
2 [4 F3 l4 |& N2 g( ^# U1 Cpublic class ActionGroupDemo extends SwarmImpl {
1 K3 ?' x+ q: k* Z k ScheduleImpl schedule;9 z: C$ K" f& D
ActionGroupImpl actionGroup;
" s% f6 Z1 A: T/ t ListImpl list;
' M0 [- u4 c: c) \. g, W9 S0 [' V n char Id = 'a';: b* N) J2 {* I6 Q" H
4 e6 x$ }. s* G4 I7 g# p. ^) y ActionGroupDemo(Zone aZone) {
, e# }& ?# A2 {1 m& P super(aZone);6 E+ s, N9 C7 R% P9 x3 e* f
list = new ListImpl(aZone);* {' ~( F/ P4 \0 y" C/ _
swarmSetp();$ k% w+ j: K b6 g( P* |+ B
actionGroup = new ActionGroupImpl(aZone);
W/ u8 Y6 k, y schedule = new ScheduleImpl(aZone);/ F0 O. |9 g3 g4 S, R" j
try {
s h5 h. }3 K w8 F4 J# i+ J1 Z Selector agentSel = new Selector(Agent.class, "agentStep", false);1 R( ^% ~' h$ ]* f I8 K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) F9 s6 m: n& ^4 |4 p3 ^; `& n
+ ~, o7 V: [5 u3 Z& b# D actionGroup.createActionForEach$message(list, agentSel);5 u- F3 R! B$ F
actionGroup.createActionTo$message(this, swarmSel);; f9 v$ I, x& q2 f
schedule.at$createAction(0, actionGroup);6 X3 Z% K4 p. h+ R/ H0 `
schedule.at$createAction(1, actionGroup);
1 ~' m5 L$ L8 z/ Q6 s( L schedule.at$createAction(2, actionGroup);
$ g8 v2 J+ _+ l" G' X
' {2 g m) z& S q9 u } catch (Exception e) {1 @5 L3 V0 c3 ?, y
e.printStackTrace(System.err);
6 i/ t6 B' J+ q) z //System.out.println(e);* }0 ^3 k6 b5 |6 P+ N: y
System.exit(1);
2 |3 s5 h: J2 B; u3 M/ [ }) R/ t: l! W9 n3 Y! f
( B! J5 k+ t( V4 z0 [4 J3 Y2 ^
* s9 g, c- [* b( C) ?) ~' J0 Y
}4 W9 n) g3 d5 i
" c+ |8 [7 J* C3 L private void swarmSetp() {1 A- d2 _+ B6 G9 d! j
list.addLast(new Agent(Id));
9 H; o9 c- r5 ~7 H. q. F2 L Id++;' ^3 B. p( A4 l5 }
}
& {6 I, o& t( p! u9 A; y7 D* e# I4 T
public Activity activateIn(Swarm context) {" B6 @9 Q+ c- c$ O$ W7 C* H9 y
super.activateIn(context);
+ O$ A4 I+ Y& a( ~ schedule.activateIn(this);
/ k L, `/ H) A return getActivity();% u" Y( P5 [3 T6 z4 h% l/ q
}* j! {! o6 ]4 ]+ _
4 s, i5 G$ G+ [% Q
public static void main(String[] args) {
7 o$ h* V2 w' J* Y* O( ^% W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 v) m U x. b( ~ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! Z* t6 g- l7 g! p! i swarms.buildObjects();
' a. ], v1 e6 f5 N; |! _- _) n0 h swarms.buildActions();
, ]- o% ]% [% ]/ \: Q swarms.activateIn(null).run();2 @3 m I5 \- g
}. L6 S& R* U6 C8 d5 s/ O. i
" H4 Q9 J' T3 w# @8 i" \
} |
|