|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* A$ t& ]- s p& t/ J) Y, O( p( k" A* M* N. P, G% i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 |& `& s. f# f4 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 m' a8 }0 |7 G% b
swarm.SignatureNotFoundException0 g/ F8 J& M2 f! ^+ B
at swarm.Selector.<init>(Selector.java:76) \+ Z ^8 ~5 f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 d) g, h8 G6 B$ _! ~7 X2 q" w7 O
at ActionGroupDemo.main(ActionGroupDemo.java:67)' j+ ^4 F) L" M/ S" u4 H
. E! ?' }8 Z3 e9 ` r% P X& }9 s3 Y
import swarm.objectbase.SwarmImpl;) Q: I0 t+ x7 e. @: i5 b' d4 i
import swarm.objectbase.Swarm;
) i3 V4 c* R1 W4 [* T* f5 jimport swarm.activity.ScheduleImpl;
$ B/ F; {! W- zimport swarm.activity.Activity;- X4 I) F/ N. K% ]8 m& T' {
import swarm.activity.ActionGroupImpl;
* T7 t7 s$ _* K L0 ^import swarm.collections.ListImpl;' u) u1 _# w& K' V3 {+ O
import swarm.defobj.Zone; ; H) J; ^* a0 s& Y. ]+ W, R5 }
import swarm.Globals;
5 {* P5 R2 r0 y$ Nimport swarm.Selector;
' T& S& I3 C1 K- X7 E3 p6 R- nimport swarm.activity.ActionGroup; 9 W* S3 z2 W( [
class Agent {
. F2 Y" b% \! d( A% Y8 V+ W char id;6 a; W2 G X9 {, N2 F2 S
+ E1 v& g5 \' t0 s. ~' s. z Agent(char id) {
`5 W. R: v+ J: [, `0 d this.id = id;0 X! M; v4 q0 O
}5 }4 E% D5 ?- X- L/ v/ ]/ h i* T
3 R# y+ F4 L+ f+ l* R2 J4 {: G public void agentStep() {" a8 t) A* e0 p0 |- Y4 `2 o
System.out.println(id + ":" + Globals.env.getCurrentTime());
' B, M. C9 u7 h- N$ h$ ]; M }
~' v6 m# p3 `}
( F5 ^$ E5 V9 F- {: Y- e# t: z( g1 L0 z2 |4 C# r( `
public class ActionGroupDemo extends SwarmImpl {. E2 J: O3 U9 J- r$ g1 N
ScheduleImpl schedule;
. p2 y6 x B- u" w4 q/ @# I ActionGroupImpl actionGroup;
3 p9 j( i2 y+ D9 W9 `% { ListImpl list;
* z8 v* D2 K2 Q! P2 w' h: p char Id = 'a';
0 Q3 K- F1 S% m2 H' i# [; Y
. {" r7 \, k/ I! E8 g( z ActionGroupDemo(Zone aZone) {
$ G3 Q6 O1 S3 S4 Q* s super(aZone);
8 x6 i: a8 b: q4 v list = new ListImpl(aZone);5 m0 A- V& |" r$ p; E9 y$ K
swarmSetp();) R0 b& | ~7 X0 i3 H4 [; N1 E2 t
actionGroup = new ActionGroupImpl(aZone); e* X6 Q2 E; t# ]& m+ D
schedule = new ScheduleImpl(aZone); N$ f' N. G, i J
try {
9 E$ d3 h/ O' A; r& g& c# ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ r H; _$ @1 O' }& b, d9 R Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. q8 ^5 c. U8 L* v# A/ [4 a& c
/ N& `4 Z- W) Q+ @+ O0 X+ @
actionGroup.createActionForEach$message(list, agentSel);) A- ]4 W' l, ?! g4 G+ v+ e$ X
actionGroup.createActionTo$message(this, swarmSel);
( m4 t" m/ a4 Z- L0 E schedule.at$createAction(0, actionGroup);
& V1 k/ E* }1 U/ C6 C7 d schedule.at$createAction(1, actionGroup);2 R- W. C' C6 ^6 S" s0 \! E
schedule.at$createAction(2, actionGroup);) ~& r& D: C: a3 s3 l L
; y7 Y; m4 R4 g
} catch (Exception e) {
8 K- X# I4 y8 }+ u/ b3 I/ A e.printStackTrace(System.err);* `' A: ]7 `: V; j* Y
//System.out.println(e);
/ y9 K) T1 x# z" D- J" V System.exit(1);* {6 H9 z9 R* n6 v2 }" ^8 y
}1 t; l& F( b8 x
' H* d4 ?+ g- e
2 w' I/ p( O6 L4 K/ J
}' _7 c2 {4 n2 Y7 `1 X% x
8 j8 }& I3 Y. E6 S) r private void swarmSetp() {( E. ^+ J. d2 j k* d; ?8 ^
list.addLast(new Agent(Id));
o- I% q+ R" [1 F8 g5 A M7 M Id++;/ `9 K i9 y, K! v
}2 ~. r2 R- q8 @/ i# g) r
1 n- {- w+ e; @7 y0 X- x& k4 H public Activity activateIn(Swarm context) {9 y( a( P$ K6 G/ i/ }
super.activateIn(context);
# W; v; `* w' T& c9 I9 G3 e* J# b; \ schedule.activateIn(this);* T6 b6 @9 R7 b& `
return getActivity();" o. q, s+ t: Q' J3 h
}
( X+ J8 |. T+ ^$ j/ l8 l: h2 @2 d+ {7 b1 J) r+ `
public static void main(String[] args) {
' L1 k& I9 E ?% g6 H. m7 y+ E4 v Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. P% i! P( g9 s& ?9 r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% c: w( l$ C- f" s3 q0 C
swarms.buildObjects();& s1 t! u" T* w. X
swarms.buildActions();4 Z) `( n+ }' E0 w
swarms.activateIn(null).run();
5 K l5 I( ^6 H! z; }* w4 z }
3 P4 K8 I7 W& ^( b6 M* d: W& e9 `1 Q! M1 K6 S8 ]
} |
|