|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ |- S N) f+ N8 p' j( \, ?, ]3 ?& b* a0 ~4 M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 Y7 ^% I, Z" ~6 _% X0 q, N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ f0 u2 x8 e9 y' _9 n( u5 l3 b/ k; \swarm.SignatureNotFoundException i$ r* w, @" e- e% V; w
at swarm.Selector.<init>(Selector.java:76)
+ J% d2 F2 ]# R) ]! Y1 U, v at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 ]" W* ]; J H: c6 n/ b7 c" b8 M
at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ h1 Q9 S8 l9 E4 F L! R( L2 U {
2 e( e+ u b/ b+ T% e! L) I3 {* B7 M; `0 N. f
import swarm.objectbase.SwarmImpl;
' b0 K& ]9 }& w/ ~. nimport swarm.objectbase.Swarm;
) t4 G6 h* h3 }import swarm.activity.ScheduleImpl;) g5 f" Q" }" [! E
import swarm.activity.Activity;
! y( w* E) P& K4 x8 v1 [5 I* wimport swarm.activity.ActionGroupImpl;. K5 S3 w: H, b) Z- h8 x# r4 G
import swarm.collections.ListImpl;
6 k8 f- j% |2 Z) Limport swarm.defobj.Zone; $ @* g# e* L$ g; h2 |3 _+ x. x
import swarm.Globals;: I) l$ T9 d" ]: Y9 A
import swarm.Selector;* Z c/ u: b+ X" F1 E; x
import swarm.activity.ActionGroup;
, V# Y( A5 F1 w' _9 uclass Agent {2 k" F! z8 Z$ X9 l
char id;
# d2 s8 ]& c3 X8 \' A/ a+ y3 v6 x7 O, O: q2 ~ x3 O8 N
Agent(char id) {% h c# v& Z* H$ _/ a( u
this.id = id;% Q8 L) t4 s; k, l, b! c
}) K" N' U) z* i5 i1 a% i
. I; d0 ~- N/ y8 n$ d' j
public void agentStep() {- Y3 N( j* V3 w0 M8 ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 [2 h, R6 M0 S: S! r; t }, N! g. Z8 v @. M
}
" c2 n! \ d4 K1 o5 @1 g: s6 U
2 h1 o3 u$ }: Y: o) c W2 dpublic class ActionGroupDemo extends SwarmImpl {
1 ?1 L, D& F! F W$ _! g7 F ScheduleImpl schedule;
- c( h$ n9 Q: j$ J2 X ActionGroupImpl actionGroup;2 p0 y$ F/ C, B0 E" Y
ListImpl list;
) b; v. I- b) G% b \. _% I" ^ char Id = 'a';
* j; \3 M2 j2 {9 _$ U* @! w' J
2 a9 e S( @: h$ | ActionGroupDemo(Zone aZone) {3 b* K; W/ M7 [1 G6 b: ^7 H
super(aZone);
5 R+ M1 I( r- Q' Y6 p# @9 z' j list = new ListImpl(aZone);2 o. q1 W! U4 N! @9 h7 c
swarmSetp();3 _; x4 O0 _+ l9 }2 _
actionGroup = new ActionGroupImpl(aZone);% z' c& ]5 u8 |) V7 t
schedule = new ScheduleImpl(aZone);. o( V3 ]; F9 V& j8 c4 v: r& H z+ c
try {& ^4 g, K* I" B9 F) X3 T0 H) k
Selector agentSel = new Selector(Agent.class, "agentStep", false);- y/ [: w4 Q; b5 n- B2 N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% J x* e5 y' L ' c: x" e) _% K
actionGroup.createActionForEach$message(list, agentSel);
! ]5 Y/ C. G' o4 T6 q3 A actionGroup.createActionTo$message(this, swarmSel);, |: u' _* [( I/ i
schedule.at$createAction(0, actionGroup);$ z5 u9 I+ O7 G8 I* F, S8 s5 W
schedule.at$createAction(1, actionGroup);- E( v" l/ q% q' Q _
schedule.at$createAction(2, actionGroup);4 n( q/ @. h& m7 f! U# ~$ E% E
# w( h, q! n5 R* r4 k } catch (Exception e) {. X6 k: _9 `3 I" S6 k
e.printStackTrace(System.err);
) y. c$ o1 x* p7 n1 T //System.out.println(e);/ \0 R k: t2 `, k- ], f2 H: k! |
System.exit(1);
# | R$ K% ~& @' T1 j } Q$ R. }, m9 I! d' ?& D! N
! f: i1 R+ s. i$ @, {, [! r
9 X# ?/ w* \: @- V& o% V }
% f8 F3 \) `' E7 s- |* O
9 [ K- K6 W. i, ^+ [ private void swarmSetp() {
1 z' ~. f6 n; C. E0 k( m list.addLast(new Agent(Id));/ P- t/ R5 w3 V! l% V7 W ?- R3 F2 \
Id++;
& r9 C& `9 s, z, y c }+ g: d! x5 F8 u, K' O I7 G
5 F2 r. g D) C6 V W
public Activity activateIn(Swarm context) {% v- \ Q! S% j, Z, u& s5 K
super.activateIn(context);+ R" c- K4 M/ ~6 | V. |
schedule.activateIn(this);5 v) U, \# F+ N
return getActivity();
! h6 u5 h) o% [2 t3 c1 b4 F) v }
5 n. X; X( B- i7 i9 I5 P, I6 z$ ?+ g, n- `: f& e* K
public static void main(String[] args) {
" A# O# I* t1 j: w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; b6 @" |2 ]6 R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ ?& v W& q4 x# y9 X; i0 _ swarms.buildObjects();
8 V% w& O# m, ~6 G, | swarms.buildActions();
/ _. _5 L) y- B) V swarms.activateIn(null).run();% C# a( Y1 i' [- c: \: T) L. M3 C- A
}% i. o/ `, W: }1 `& ]
! B* A) g# h `
} |
|