|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! n* ^% X8 N0 L: q& P
; l3 v; ?: S% }, T$ z" W& ]6 b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: a$ s3 O% i9 g* B, S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 S+ X& D3 P3 y6 eswarm.SignatureNotFoundException0 `- q$ u, z. @& s6 s$ i; i
at swarm.Selector.<init>(Selector.java:76)4 P- E- r. K% M7 _; @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 G6 h8 s4 @. D4 ] at ActionGroupDemo.main(ActionGroupDemo.java:67)) G6 {# Q- |$ t5 ?1 n
" N3 K' I a* c/ S1 b/ a
) `6 P) g9 b' v9 @( R5 ^import swarm.objectbase.SwarmImpl;
) X) L2 b2 B1 y, B$ `import swarm.objectbase.Swarm;; O" K* w0 A) a, _' ?. _- ]- K. Y! g) i
import swarm.activity.ScheduleImpl;
) G' g2 @: w! eimport swarm.activity.Activity;3 D/ w* r5 @ m9 }+ i+ J9 T
import swarm.activity.ActionGroupImpl;+ Y( n% B( |, Z
import swarm.collections.ListImpl;/ W& [; j5 P+ b7 N
import swarm.defobj.Zone; s/ P. d" b0 Z/ Q) g9 p
import swarm.Globals;6 ?8 h b0 V" P6 [. Y: l( ?
import swarm.Selector;
; k' H. `/ x7 k7 k/ R6 dimport swarm.activity.ActionGroup; : Y& c: `$ X; s) T6 |5 x. o
class Agent {) q- P8 [- O! Q; n8 t3 K9 _6 L
char id;
. i6 o/ }4 ]6 `( Q
% F. g; m6 w+ P+ E: s; H# z Agent(char id) {
a9 z$ J7 f% `3 Q this.id = id;/ A' M8 V: Q8 F
}
2 J5 o2 c5 C$ X' f+ I$ b8 h! I0 `/ C2 Y
public void agentStep() {
! ]3 Q* P! n& A System.out.println(id + ":" + Globals.env.getCurrentTime());. v6 O6 N& D1 T7 a: y
}# C' B$ v+ {. v) G* r' A5 V
}
3 U+ W+ F! i. m2 e5 B, D6 m. ~5 }2 k- v J3 `6 ?& M
public class ActionGroupDemo extends SwarmImpl {
- ~4 G' a) R* J8 g) d ScheduleImpl schedule;2 d/ g/ m+ B V) U8 R; [4 ]
ActionGroupImpl actionGroup;4 U. U4 {1 I1 l3 j8 \
ListImpl list;
* ~* }4 U6 h! @# D$ U4 E1 G1 K char Id = 'a';, w5 X0 j) F2 ]) n V0 x3 P3 T9 j
" ?9 d+ o' F( g) @! u
ActionGroupDemo(Zone aZone) {
5 \* C1 C8 C( t Y4 E super(aZone);! W: m' y, d6 b1 Q0 |
list = new ListImpl(aZone);, T* G1 a2 ^+ i$ Q' i9 C
swarmSetp();
' d8 J4 j* L0 q( |. r( p( G( ]5 n actionGroup = new ActionGroupImpl(aZone);
+ X5 x% w, [% k schedule = new ScheduleImpl(aZone);# L: r1 Q8 b5 E2 n, x. Z
try {
4 T4 r% c7 u# H! W Selector agentSel = new Selector(Agent.class, "agentStep", false);- u" i# O7 G1 E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ p9 ]. \ Q; V" A
: N8 k1 |' T4 K
actionGroup.createActionForEach$message(list, agentSel);
# B/ t- I u3 o; b; H- x: W |$ [ actionGroup.createActionTo$message(this, swarmSel);
% V: o* a7 V6 u' A schedule.at$createAction(0, actionGroup);! |" q: r9 q& n# S9 Q2 y
schedule.at$createAction(1, actionGroup);
6 s9 U% R o9 c schedule.at$createAction(2, actionGroup);' A/ n2 R" w$ p" j! g4 p$ A8 z) G* c2 j
3 j. K6 ]8 P+ H, V7 [" F0 D
} catch (Exception e) {& @) h( C1 r8 j3 D
e.printStackTrace(System.err);
" n) \) s& o' x2 l //System.out.println(e);
' G4 I# ^: k+ s System.exit(1);
6 F1 n8 U. r V9 z. A$ s }: N8 V ]% Q5 d `# f/ L) T
* h1 m _7 o& V7 C& G ~ O
7 r. G4 B7 B, U! M- f }0 @0 Y0 L z, S9 h# `5 ]* g
/ x: c6 e$ c6 W4 V private void swarmSetp() {2 q7 `* d1 |9 E9 p! m9 `% P
list.addLast(new Agent(Id));* K; H) W+ K6 H$ g/ Y7 G2 ~& ^
Id++;
& a6 E S, a* G1 w* v/ D* ? }$ L' \7 z9 P6 E, e# O9 d6 x; \
% r$ c# @9 Y$ O3 f4 y; C2 Z public Activity activateIn(Swarm context) {
3 M V! ?- W; {4 r; r super.activateIn(context);
+ x& O7 L, t! c. t schedule.activateIn(this);5 d* s. h, A/ A, Q, z2 T
return getActivity();, N, H* @) y$ D* @
}- j. D- g9 r+ _2 v
! P9 k5 ]9 d, F" ^6 ~! p: d public static void main(String[] args) {. N& z j# t, T& w! Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: P8 N5 f' \! F9 |7 @3 f9 B3 M" y/ T& O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) g5 x) V0 D' U7 y' I' l/ z
swarms.buildObjects();: X; [+ L) u" _4 A3 D& m+ k% g2 V
swarms.buildActions();
1 E, a* U' Z. W swarms.activateIn(null).run();+ g- N2 ^6 v/ a- E S
}
$ B" v; j! ?4 u8 ~
% _# D7 k) c# a5 c} |
|