|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * c2 Y' X B% Q/ J
! a) E' E. l2 Y& L# r& [9 ~9 s本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* k' ]5 @+ y& l- p2 Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 O! p, e4 y7 Z; q4 X" h n iswarm.SignatureNotFoundException% k% v$ R1 [% x; B8 ^' a3 N
at swarm.Selector.<init>(Selector.java:76)5 G% n6 j: f5 b% D1 S4 x g
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) o4 V9 H* f# f: z! F
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# S% }6 j7 B# _+ F/ l6 t
, b- G) Q# C$ X2 N0 ?
8 R4 m$ o5 { J- {/ Dimport swarm.objectbase.SwarmImpl;% S. S) ~5 S4 J' m1 v1 ^
import swarm.objectbase.Swarm;2 ?0 Z6 u" w' g7 S
import swarm.activity.ScheduleImpl;
0 M6 |0 D( Q0 P) D2 S9 a/ Himport swarm.activity.Activity;, S( E1 X! E( G1 @! `* v- A$ W7 i
import swarm.activity.ActionGroupImpl;) G0 V( V# V h' I
import swarm.collections.ListImpl;
- Y: w( T# g( c' ]+ n) ~& K( w! Eimport swarm.defobj.Zone;
2 \" @. X" o- Z$ n8 O. ~0 Bimport swarm.Globals;) V, d4 H! T0 [ Z
import swarm.Selector;/ M3 g- O+ ^, r' L# N
import swarm.activity.ActionGroup;
+ s- `3 w' M+ |+ Y+ ~1 _class Agent {
# H" J, J( D( _- |. U char id;. Z- k! f- V* i
5 J( A3 X/ m3 @8 P. U* K Agent(char id) {( X- n4 E. {( f& o2 Z
this.id = id;
B: b5 y& d5 W- h( ]" j1 G }# W' v( @* f0 M/ }
, P8 q- M- M7 c4 C! p# m4 {! i# P( P
public void agentStep() {' x( n1 q8 v& W# h0 E, V
System.out.println(id + ":" + Globals.env.getCurrentTime());
* P. M9 v5 P$ A3 a. q }
1 O9 Z# E; O3 `& y, s4 F}8 p" z$ i! f! h, N
* s1 i, a: d% w6 N+ Q6 F" j
public class ActionGroupDemo extends SwarmImpl {
+ I8 W3 y0 l( i* M. t ScheduleImpl schedule;! F0 M* \7 {6 o
ActionGroupImpl actionGroup;
; i7 r) G. q. \+ m8 u2 l* M% ] ListImpl list;
# S5 h. z9 ~0 s8 f char Id = 'a';
. S* m% f; w* r C# |/ [
8 y% V+ ~5 [. ` r ActionGroupDemo(Zone aZone) {; U3 l( K; K2 ]8 w) t
super(aZone);
" a q! r. V4 F+ b- m+ ]7 _5 Y list = new ListImpl(aZone);
2 h- Y6 K: t! j swarmSetp();6 m. P6 Q7 {+ `, [- M0 u" K1 r
actionGroup = new ActionGroupImpl(aZone);; t* Z$ ]! ]' h
schedule = new ScheduleImpl(aZone);6 _9 P! I* s/ u+ c& T+ F- ]: J
try {; G% U0 P: T6 Z+ @
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 v0 ~" `6 i$ t' m6 m B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! r$ [1 A- T# E |5 `- N, @5 O + U0 N+ h( X6 R7 D9 f
actionGroup.createActionForEach$message(list, agentSel);6 }" l: a/ ^" [! O' _
actionGroup.createActionTo$message(this, swarmSel);2 v/ N2 i6 x$ l
schedule.at$createAction(0, actionGroup);
6 c' j+ c7 ^) T schedule.at$createAction(1, actionGroup);
; N% g2 F) _; O1 o schedule.at$createAction(2, actionGroup);
8 }7 O+ Q+ x( t; H" x1 Y
6 O: Q1 W% E6 K } catch (Exception e) {$ A# D$ ^( [% U
e.printStackTrace(System.err);
p( K3 X* T' T( z9 f, e //System.out.println(e);
' q9 @3 h# {$ j System.exit(1); W& } a! K) c; s# f
}0 x( _6 k1 ~" ?0 t) o
7 a. E" `+ E) ]( ~1 F. Y0 P9 E
6 a+ x# x; ?, B0 i3 }6 {. b6 R }
! ^9 _' ~5 s4 p' ? c$ i/ Y
7 V4 ?% X4 R: l. c private void swarmSetp() {! q% j3 h, K4 \+ u1 ?9 q
list.addLast(new Agent(Id));
/ ?* g1 c. A Y$ a Id++;% ?0 {: q( f" V* f( p' X2 P& L* x
}
& }" j; u2 \' s2 h
$ f2 f: W& V+ Z) s. c public Activity activateIn(Swarm context) {6 V: }0 R1 q, r/ O) G% I; W% p# z3 a
super.activateIn(context);
, B1 Z6 q; Y ~' d, l! [ schedule.activateIn(this);
& Z5 W! I; z( T! ]. `( ` return getActivity();& n$ `& x/ j6 Q' h6 P8 d6 g/ u
}" I6 R6 V3 E) ?5 a
# s' g3 k" k. [7 m5 i* n* @& P8 y
public static void main(String[] args) {9 ^6 ?0 g: I1 D% S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& |( E0 D' b" C! j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 i( }, R' w. c ~ swarms.buildObjects();, ?) r& B& G! n' K! O
swarms.buildActions();
( z( X5 f) ]6 `. m( J5 @+ W8 n swarms.activateIn(null).run();
0 c: w3 d6 P7 B! w) c5 p9 u+ i! n* I }9 x, ]' a' R5 E/ K2 c
a( G* Q1 v2 o! m7 }, x" t: d
} |
|