|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : e) u B& `, V4 K @
; v9 x' \- J$ ~. l8 w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) d' R6 p' q8 U r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% u! l1 ]4 C; ]* k% U- e
swarm.SignatureNotFoundException" O# J1 O: R; m. q& ^. i. H" Q
at swarm.Selector.<init>(Selector.java:76)
1 W* t# o. j( e7 \1 S7 l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 c. D% \; @+ `+ u at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 x+ l ~8 W' ~( o- z" R( ~: ]
; _9 u3 h0 c+ }) b6 H0 l! ~, k+ H- E7 u( a- N
import swarm.objectbase.SwarmImpl;
6 S. M$ T( k. n* G( G5 _, l( s jimport swarm.objectbase.Swarm;
O+ l" r7 T" q3 m' }1 uimport swarm.activity.ScheduleImpl;" B, F( [- s G7 h$ ?! R
import swarm.activity.Activity;# B. J; e5 ~8 `3 T( e
import swarm.activity.ActionGroupImpl;' N5 X9 n$ b( \" U) |
import swarm.collections.ListImpl;
% T5 F' B& V) ?4 G3 @import swarm.defobj.Zone;
3 C6 j+ d0 Q+ M, R9 l. Zimport swarm.Globals;
9 [ w9 c$ o3 | u: E+ \( kimport swarm.Selector;
4 _5 B1 Z6 i4 A4 i, Gimport swarm.activity.ActionGroup;
9 Y V: l/ N/ r2 z5 Vclass Agent {
: Y7 f0 c! [- ~1 `0 }; t/ [ char id;. S; f$ l7 M; o# ~, f" Q
3 T; p0 R5 [1 F8 R3 Q Agent(char id) {4 r0 @& l6 y+ O- K
this.id = id;
5 C N2 Y, Z/ I g6 g7 { }) U2 _" g2 F# B1 V0 R9 t
8 [7 [8 I3 }8 T) l! s- \
public void agentStep() {% O% a- V d) B& g* J! h- b4 b
System.out.println(id + ":" + Globals.env.getCurrentTime());' }) P) K+ m6 v/ a0 T5 o
}; D: Z7 m; u+ @
}; o2 v$ m4 H% Z0 F- r' g. Q
& j/ t0 M/ U1 e8 j
public class ActionGroupDemo extends SwarmImpl {
; z$ a/ [, B8 |( V/ [( ^/ H ScheduleImpl schedule;& m2 S4 R, y2 B" B4 L4 G$ t
ActionGroupImpl actionGroup;* T* V* @/ S+ Q0 x! s' t& Z3 K9 j
ListImpl list;
: ~& _7 m% Q" w; l8 N char Id = 'a';/ c S( p' D6 I
$ @6 e8 D$ _: y( r# u
ActionGroupDemo(Zone aZone) {. d+ q R* Q7 I) Y9 ]9 |
super(aZone);% j5 R; f! I* \4 G8 x' Z6 R) u
list = new ListImpl(aZone);4 Z. ~. E8 g0 H( x0 B7 g$ T
swarmSetp();$ U/ s+ a% d. X! U5 X0 _9 v
actionGroup = new ActionGroupImpl(aZone);
% l. A8 ~' k7 M8 F schedule = new ScheduleImpl(aZone);
0 F# n( H! }# t, V/ }5 u; l9 P try {# V7 h5 Y7 u/ |5 [5 f/ O3 R
Selector agentSel = new Selector(Agent.class, "agentStep", false);
! M0 T6 g q: t' H6 h) n Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' b `; f6 E; K/ V, m# c
) N4 a9 X- r! n7 W2 q4 C8 }( o actionGroup.createActionForEach$message(list, agentSel);, q I! X* C3 U
actionGroup.createActionTo$message(this, swarmSel);
# a3 O# O/ k! ~) n; S$ g schedule.at$createAction(0, actionGroup); m( E& }5 W3 Y& s, c# C I
schedule.at$createAction(1, actionGroup);
% [. b& }5 s; P u% B3 R2 N schedule.at$createAction(2, actionGroup); {( z1 [8 o/ n& Z
1 Y/ H$ \4 i' a/ L4 Y' L } catch (Exception e) {
% l+ r N, U Z3 h' n e.printStackTrace(System.err);
0 e8 w& [- Z3 ]$ b7 U# y //System.out.println(e);
; L( I! Z3 t5 K System.exit(1);6 _; y) U* v9 r4 W& H
}
- l0 c- g7 ]) ^' B# S) j# m/ B
% V5 l+ C: F2 E. ]7 P- G; g# l; Y3 W: i( N' M* X
}( }# R# s* v- j) X. k! A
, Q! M- m8 }8 [5 X1 c
private void swarmSetp() {( o, T3 h! h& s3 N5 s7 M
list.addLast(new Agent(Id));1 z/ P3 m4 n0 g) f/ S
Id++;% I+ r+ z3 H* m/ F
}
; }% v0 K; e$ q8 g" ?
1 X. F8 V; x1 z( M public Activity activateIn(Swarm context) {
5 Y3 H! V, l# y$ ]5 N4 Z# r- R super.activateIn(context);
9 U! f8 P) W4 \ schedule.activateIn(this);
+ z3 q" x0 A3 t2 ~% w: M) t( D return getActivity();) e9 r3 I6 I1 g) L' }
}
) o4 c# l3 k" j' z6 U7 z
B; L; J. L' f- r1 ` public static void main(String[] args) {, h; I- U% Q; K. D" Q0 I" @
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ B6 I Z: ?& K B5 M
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# p3 V- |, F) O1 _0 ]: E8 n8 Z
swarms.buildObjects();
0 [! \$ p( j' x swarms.buildActions();
, g, F! t3 k' `( u6 c swarms.activateIn(null).run();( k. d" e8 s0 I5 B! f
}3 V0 ]" b9 t& V, j( e& N
" ^1 Q) X" o1 v1 F e
} |
|