|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( I( z: c' |' x. h# f
$ ^1 q8 }* {; H2 v/ m3 v U4 {! {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 a, n! F5 t: x; [; @8 W* @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% g- A' [' y6 \* ^" B* J* Q
swarm.SignatureNotFoundException
4 @2 [+ n/ ]# g4 Q5 s0 {. [ at swarm.Selector.<init>(Selector.java:76)! Y! z1 `# s" B+ [0 T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): F+ S: s: l( f- [. A* ]: U; f; T
at ActionGroupDemo.main(ActionGroupDemo.java:67)" a4 K! O2 ]! n8 e
( j7 }3 F& Y6 m* M/ H
% B. s/ s( u- M# @; Nimport swarm.objectbase.SwarmImpl;8 c$ U) v' f* X! x7 s2 R+ ?. w
import swarm.objectbase.Swarm;
9 s# A1 Z+ k* b0 Q0 K' e$ n- F* Pimport swarm.activity.ScheduleImpl;
. M# `3 j& [+ J. Y" F) yimport swarm.activity.Activity;8 ~ ~% ^ G/ J5 K) y
import swarm.activity.ActionGroupImpl;9 f9 W8 c6 u- Z8 e5 T
import swarm.collections.ListImpl;$ Z) B& V& m' o1 K% t3 M0 N
import swarm.defobj.Zone; - Q, k: W, [/ U7 N
import swarm.Globals;1 d/ c( |- G! \+ n3 e& z; d
import swarm.Selector;
/ i+ X. D) L5 q: L% D8 N; d8 Nimport swarm.activity.ActionGroup;
/ o U( B: Z% B8 g$ ?, E& G* E; }class Agent {
/ B8 M$ k6 O3 u2 S char id;
8 L; @% F0 ]" X$ H
; ]! S9 c; K: K& h: ] Agent(char id) {% B( t$ [( T4 [6 P" N+ q
this.id = id;
9 p% w" d5 A/ p7 |% ]0 f+ |& ^ }
# S% t \8 i" k
. {% `' [# w: g6 d" `9 B) [# i public void agentStep() {/ G" H s; `- h- p
System.out.println(id + ":" + Globals.env.getCurrentTime());' [* U% m6 q9 J' d
}( T$ X2 E. V; @3 y4 S
}
% `# G% T$ c! l! Y" Z2 ^# p: ~$ I1 i8 \% Y0 V' q
public class ActionGroupDemo extends SwarmImpl {
. P7 s P" _& J- K ScheduleImpl schedule;
. A- C% S a1 d ActionGroupImpl actionGroup;
! |) |. a/ h' T0 G; A ListImpl list; W x5 C1 W' k m4 e p6 O& P
char Id = 'a';7 D4 e+ w9 B0 d- F* `- H
; J3 ?$ D4 |! J8 b) m' t ActionGroupDemo(Zone aZone) {
& _: T/ Y, X4 y, g super(aZone);% _: s' G' e& v% I! ~" a9 O& }
list = new ListImpl(aZone);+ x1 c( f$ U& \* Q
swarmSetp();
! @% ]3 p) r M9 O actionGroup = new ActionGroupImpl(aZone);& } V$ S. B1 Z8 C A
schedule = new ScheduleImpl(aZone);
! m2 v7 R5 \7 \' p try {
% H( c6 m/ v5 T Selector agentSel = new Selector(Agent.class, "agentStep", false);
! I* X w, m2 q+ j Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) p0 u. L/ |! o
9 l; a! |' o5 H actionGroup.createActionForEach$message(list, agentSel);
+ q2 }7 _/ y/ W/ a2 h9 O actionGroup.createActionTo$message(this, swarmSel);7 S4 _* J+ l# j8 C
schedule.at$createAction(0, actionGroup);' P/ b8 Y/ @' Q. `6 `* `
schedule.at$createAction(1, actionGroup);! z# {/ \' @8 \# {0 o8 w( W
schedule.at$createAction(2, actionGroup);
- k; f9 Y" P3 e) M+ H& B, x" s5 c% |% s* O8 j2 a1 q) E
} catch (Exception e) {1 T/ g) |4 I; X- s
e.printStackTrace(System.err);
3 c; [+ U& A3 ]$ z* |4 m$ E- t$ g //System.out.println(e);
* N0 N" L6 t! N) `1 b System.exit(1);
1 r) e8 M; h0 X8 T2 c. `5 s3 A$ ~ }$ X5 e8 N- p1 t! Y" l4 e9 X6 K- g
# n8 h+ Y) q1 |: m- H
w! J2 [' |8 k3 z
}3 ^ I) n C3 K6 ] V
! f" r) Q& f4 k2 J private void swarmSetp() {6 t! U) ?0 L9 Y% a! L4 x; O
list.addLast(new Agent(Id));
1 _1 ? m$ n, S% b5 ~0 w( F+ P6 B( x% j Id++;
0 {" C+ X$ A" N3 k/ K7 Y& Z; }/ D }
( q3 `, G8 u9 \1 n% B& }+ a
3 x# j8 O, Y! Z5 I7 a public Activity activateIn(Swarm context) {
( b' {; i8 o! }, B- @2 H% B super.activateIn(context);
% E8 @1 p! a3 x- l0 r c8 R schedule.activateIn(this);
3 {- U* o F4 D6 D% C return getActivity();7 d( w) J" z8 y1 ~+ M3 a6 p
}) u$ Y- Z2 q2 Z, }# c( s
% @; G5 Y( j; M n
public static void main(String[] args) {' M) @ r% ]! M3 y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( r# {: E' C( ~. l& C- n Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 d* k1 `% \# J1 @( b swarms.buildObjects();
K1 D* n2 b; R0 E" a% M swarms.buildActions();
3 u3 x' @7 {% p- r' z. x swarms.activateIn(null).run();
6 k7 H3 U" L& ^7 l8 u- l- J }
3 |2 F! j' Z$ E* o/ g3 `1 U4 z8 K$ Q0 V' l* V2 t( e
} |
|