|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
O. |# C$ N6 g" {) L6 c
9 B/ m% s5 A+ w% {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 |9 I* a# U' a6 {- [1 s, Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 u$ z7 \1 N6 d# s; w% dswarm.SignatureNotFoundException& a) z- y o9 r" H- Y9 d
at swarm.Selector.<init>(Selector.java:76)% j5 M8 z/ N" Q/ ^: t
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 a5 B$ I/ D, S' s3 F: v& \ at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 v5 i* ?) i" n' x' R/ a$ ]& m4 C7 g, N+ ?4 Q6 Y1 d8 ]
1 H* P+ k- R U9 v+ fimport swarm.objectbase.SwarmImpl;
) ~+ m+ d: O8 Y( D Jimport swarm.objectbase.Swarm;, l5 E4 n1 q) J" c+ C$ _' a
import swarm.activity.ScheduleImpl;
" P& |8 f$ x- Z" S, `import swarm.activity.Activity;
, U/ p- U& K/ S) c" Mimport swarm.activity.ActionGroupImpl;
/ E$ s+ I S) w3 s9 C+ a+ n Eimport swarm.collections.ListImpl;' j/ Y! C0 t5 r9 K
import swarm.defobj.Zone; $ m7 K% t6 Y* O# U
import swarm.Globals;$ i5 s) ?5 `1 y& g
import swarm.Selector;
( a8 l# q' m$ J' Qimport swarm.activity.ActionGroup;
& R1 n2 r7 F# e0 u/ ]class Agent {9 j! F+ c; i0 v$ ]
char id;
; p4 n: M" L8 J/ m- q: t
# U) h3 U: y% c, R+ x# i8 N- ? Agent(char id) {* u9 T. t+ v4 N# X1 ^. S
this.id = id;
, W1 g1 a. P, A }
0 b z) i# T5 f) p% Q# E, b) G- Q% U S: d( c8 u. ]& p
public void agentStep() {
. D6 M. A2 b$ }2 D/ | System.out.println(id + ":" + Globals.env.getCurrentTime());
6 K( o. A8 O+ u# x$ I* P }8 Q+ v+ Z- b0 I" v6 J
}; f9 b6 @1 v: ^9 X/ z
( Q- x1 F4 i' k2 N% f" w, ?
public class ActionGroupDemo extends SwarmImpl {2 V1 i) z8 f8 t( w# e2 K
ScheduleImpl schedule;; k/ X$ Y* o/ Y8 z$ Y
ActionGroupImpl actionGroup;, @4 }# {3 H5 d, X5 H t1 u( R
ListImpl list;
) Y( `8 [' S/ x" ~* [ char Id = 'a';) j: S8 }/ {: F) [3 K1 L& ]
; ] q; u: ^! F' r7 F ActionGroupDemo(Zone aZone) {
/ k, |+ `, N# R) Q$ j super(aZone);9 J# ]9 a1 _! ~. I) h; v. {% T' j! l
list = new ListImpl(aZone);+ u+ j7 g* _2 ^6 u2 n! y
swarmSetp();
( p1 \0 F/ V+ d. t ~2 E+ r# w actionGroup = new ActionGroupImpl(aZone);
9 r' J) T/ [: M: }( x( ? schedule = new ScheduleImpl(aZone);
+ ~ ^- H0 l8 _4 @ try {
) A) E8 Y/ l9 ~7 x Selector agentSel = new Selector(Agent.class, "agentStep", false);: k; `; Y5 i4 i' `# N5 \
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 O1 C) C4 J) @% a# x% `* T
/ h W' k, R* M* x: u* O0 j3 q
actionGroup.createActionForEach$message(list, agentSel);2 B$ ^4 G/ z9 w- _, h! \: r
actionGroup.createActionTo$message(this, swarmSel);
/ ^* u% C8 U9 Z schedule.at$createAction(0, actionGroup);: O7 n) B4 p% L- J+ N' p! m! l9 f
schedule.at$createAction(1, actionGroup);
2 H, F. S4 e: V6 o$ r: y schedule.at$createAction(2, actionGroup);4 T" K0 ]' q C
R9 B9 v: s+ e- c" R. E
} catch (Exception e) {
2 `% W; [' ?+ J: L& |" t# S e.printStackTrace(System.err);! o! x# E: u" V o; z3 y! B
//System.out.println(e);3 e. K: }) i- c: l/ A
System.exit(1);
' ~/ s9 k- G6 n5 y }: Z: `0 G$ [2 [6 B7 N
2 ^% E, }1 z U6 {0 r
3 ?: ]: D0 G( p6 w" C }
0 z- T/ G* K# @) @, A) |, U" E
; ]% E5 s% X L private void swarmSetp() {
+ f, A) y0 ], O5 C+ @/ E list.addLast(new Agent(Id));
B! l d' B, o/ U( v Id++;, q9 z( N) @% Q) `6 ~% O) h
}# l7 Q4 x, J) Z7 h* P0 N
9 i, _2 W$ @" {3 Z
public Activity activateIn(Swarm context) {
; M/ z) I0 |: J super.activateIn(context);
8 K/ C: Z" c# J2 f schedule.activateIn(this);! ^( T2 [3 N2 ^5 ?
return getActivity();" A' u! q' t4 k9 D
}3 J6 A# J( T% e% b+ B9 w
, Y! k; j, W p U public static void main(String[] args) {- ^( C% [1 Q. h2 e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" N, g, ~$ W! Y2 v: E( e4 ]5 |8 F) o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; U9 t% s" F( q1 c( m swarms.buildObjects();
- Q1 {: y. m5 f8 m swarms.buildActions();
6 M; @) Y5 `/ q swarms.activateIn(null).run();
* }# E d9 j; r9 a: G! g }" v/ n: X4 h- O9 o2 ^
6 G# ~5 w, o" Y9 [( Q4 R5 i} |
|