|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 I; I! A. G8 J
2 O/ W! H& t' }) l8 E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* x" l# ~- O, W% y3 R3 u0 U! e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 ~ ~0 c9 l% J( L; W
swarm.SignatureNotFoundException
( o" _% S) j% P1 U; ?0 T8 l; G at swarm.Selector.<init>(Selector.java:76)
) s( E) L* E" A8 T* Z7 D# G- z( G1 P+ V at ActionGroupDemo.<init>(ActionGroupDemo.java:37): q, L6 ?+ `% e! H- B5 A# M3 _
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 Y) F3 K$ ?) V6 d* @/ u$ D
u1 F/ n9 c: A* E; V: F
" r! M- k7 X- G2 X4 `# B* C9 G
import swarm.objectbase.SwarmImpl;5 n% @8 ?- l9 d, C6 E5 `
import swarm.objectbase.Swarm;
6 q4 H' V% r6 Wimport swarm.activity.ScheduleImpl;6 r. G- ~5 l6 |! O+ c3 I6 w
import swarm.activity.Activity;/ @, v7 O' f1 [# Z
import swarm.activity.ActionGroupImpl;
9 @0 ?% z( c2 X* a- L$ k* b/ ximport swarm.collections.ListImpl;
W6 O. R: a A9 wimport swarm.defobj.Zone; ; Z! f% ^/ s6 T% ?( f2 b$ p4 [$ x
import swarm.Globals;
* H9 Z. c; [4 }2 @import swarm.Selector;
; K! i) H! l7 `0 jimport swarm.activity.ActionGroup; , k$ I) {4 e) s, ?
class Agent {6 { |0 y, b2 L4 C( A' [1 e, O
char id;
0 j9 b ]8 g ~3 J8 J. G H x. |0 x- P" \) ]: a
Agent(char id) {8 n. f e4 c' C L
this.id = id;# O6 `" m4 V) W l3 |) C7 B
}9 m W2 j+ a1 D- u8 w2 l
2 U9 ]' r3 ]4 q public void agentStep() {% v& O/ X& c, u I4 m$ h5 | ^0 e
System.out.println(id + ":" + Globals.env.getCurrentTime());
4 T3 K4 Q' ^, {& B3 E }% T3 f, N) L& \4 K0 F$ a
}6 A6 X% i+ V0 \1 n7 N
1 m& k/ l- e) ]# Q% e
public class ActionGroupDemo extends SwarmImpl {
0 E6 d; d: l, H9 Z3 u* ]. x9 ` ScheduleImpl schedule; A: k Y/ M) J7 l( g
ActionGroupImpl actionGroup;
) l% @& U/ J* p6 M& E* `; @ ListImpl list;
) v1 h; r& |. H; z8 H' S char Id = 'a';
$ |, a$ A+ H0 q+ w% S; R) e5 z# t1 i
ActionGroupDemo(Zone aZone) {
; @1 e1 n2 @. F$ O super(aZone);7 }6 E, t% `5 c8 R' ` @8 s+ S
list = new ListImpl(aZone);7 b. K) m9 [ C! b! _) a' E
swarmSetp();" [. r( J- b6 E
actionGroup = new ActionGroupImpl(aZone);0 [3 K/ W% x% ]4 g
schedule = new ScheduleImpl(aZone); X5 q2 @6 A. G" {1 e
try {
_& j1 E' Q* s7 A& d2 o5 M1 D) A Selector agentSel = new Selector(Agent.class, "agentStep", false);0 A' c& Z9 w! R0 E( v; z# ~
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 B7 S% m, O7 n) M% V9 U
1 _/ M" I0 b4 h5 T actionGroup.createActionForEach$message(list, agentSel); R( T9 X! {+ f5 }! V1 B; \
actionGroup.createActionTo$message(this, swarmSel);" b8 v& s/ V# Q. A
schedule.at$createAction(0, actionGroup);
0 V M4 W& H0 s schedule.at$createAction(1, actionGroup);6 e( f0 H( J2 w( I0 O" g% \, d+ e. ^
schedule.at$createAction(2, actionGroup);
% \7 p7 U6 E! k4 A. r% b$ \8 x9 F$ L( ]/ f! D' z* H- \1 v
} catch (Exception e) {- N% k! Q& a* @2 w6 Y4 k
e.printStackTrace(System.err);! X% [" x# c" G9 z
//System.out.println(e); W. N" X# E( K- x2 e
System.exit(1);* R' | z; Z* |' v, M7 V4 v
}
- @8 {- F" w: l) E
% B) ~. Y; \- [+ y! A1 Z! J9 A, ]3 B1 ^5 F
}( I: S2 p% m- W0 X& q3 U
3 U" k* Q3 r; y- X private void swarmSetp() {
6 J& n5 J/ ^2 x6 F list.addLast(new Agent(Id));
0 S4 m) J6 M9 L* t5 F d/ J3 { Id++;+ M& u/ k/ \- b& b2 j) e
}
: [! _0 l. m) r5 {. r6 U
2 H: q5 \; ]2 a. n+ U public Activity activateIn(Swarm context) {& w" [4 d' T; d2 V+ q4 y
super.activateIn(context);
) C1 ~' W* P. K7 ]( h8 s schedule.activateIn(this);
; O! ^# F( g7 e- q! p return getActivity();3 I' `6 }* {2 K) h ^9 M5 L+ k
}) F/ M Q& I H+ h( i! p, ?
8 V- O) M. I7 r# j, X
public static void main(String[] args) {2 F+ j* G! j2 z5 L! O0 T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 l0 N/ N# M- J) g* z3 z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 j# h' C6 c( C+ [( w9 \ swarms.buildObjects();
8 f! {3 D O5 I y9 {) y% A0 O) ^ swarms.buildActions();6 k" Q \, |7 ~
swarms.activateIn(null).run();
( ~+ c+ Y4 p6 b3 Z& [$ B Z }
, O& @9 h& ^4 L. ~& N* w! a% j
0 u0 f" W4 ^0 y/ _} |
|