|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ L$ q3 D6 b! c! M7 ?, z6 z3 n$ c2 b! v6 \% N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 K: l3 I$ L! M1 Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 U6 a& B0 e# Q% R8 |
swarm.SignatureNotFoundException" i# g' V% S8 F' R+ o
at swarm.Selector.<init>(Selector.java:76)9 y& Q- c6 Q; d( ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ E: s3 M8 e* Z- A: f at ActionGroupDemo.main(ActionGroupDemo.java:67)
. b: q; R" Y8 Q9 T, S
" u }2 ]' ^$ _) D# m/ q0 ^1 g) x3 z7 D
import swarm.objectbase.SwarmImpl; A- \4 W, i8 o# L5 Z$ H" d+ v1 v
import swarm.objectbase.Swarm;
. j* B2 T4 {; i; R7 C' Iimport swarm.activity.ScheduleImpl;1 C; G5 P* `9 w; `2 k* b; R
import swarm.activity.Activity;1 @+ t" [) A: G$ u
import swarm.activity.ActionGroupImpl;2 m0 ]1 h" c/ X
import swarm.collections.ListImpl;
* @5 }6 N4 c% A! d* |3 R7 U1 ]import swarm.defobj.Zone;
' g) k& ?7 x+ dimport swarm.Globals;0 h! E% _: D4 T& t9 T: _+ h# T
import swarm.Selector;5 b! Y. ^, u) C: Z* U6 O! @* Z
import swarm.activity.ActionGroup;
* ^% Z* O+ Y R2 O* h, r* g4 z' {' mclass Agent {
$ i4 j T1 q6 s, D/ D" V( [( p+ ~. i char id;
6 @0 H& B+ G4 M+ s1 N Z# t
$ w5 U" j0 p* Z% [4 ~2 x7 z, g5 o Agent(char id) {
7 k9 E( |# g2 g this.id = id;. ?. ~9 n: }) q7 s$ K
}, s6 I$ \! e/ K
! _( Q% N, C- y/ T
public void agentStep() {: ]5 x4 X: a( }: E. t; u0 S n
System.out.println(id + ":" + Globals.env.getCurrentTime());
- d: ~ B1 F/ t( |- Q }; }# X9 k/ K8 T: r
}" g3 M. M6 K$ n$ h
! j& N& ^$ \ Lpublic class ActionGroupDemo extends SwarmImpl {
" R" S- K2 F2 M/ U6 C4 D% M1 K. n ScheduleImpl schedule;
/ ~4 {. e3 J: L& ~2 h. Y ActionGroupImpl actionGroup;
4 E+ w7 c. k; Q& r5 d, d. O ListImpl list;
D' s% w2 G; m o char Id = 'a'; Q- ^: h5 c+ j% x( b/ E/ {
6 W1 {) C% o5 Y, [. ?* \' P! } ActionGroupDemo(Zone aZone) {
2 [: f% Y1 c- ? super(aZone);
+ G$ m$ M6 S0 N* U0 c list = new ListImpl(aZone);
% e& a, p" L, h/ o swarmSetp();
1 ~+ P$ W+ j, E actionGroup = new ActionGroupImpl(aZone);. C7 j6 E3 c: m+ r& @7 V
schedule = new ScheduleImpl(aZone);
& @; {; r0 |5 L$ y" Q6 f" P2 _ try {
6 ~% g4 G! K# W( l: b4 k9 k Selector agentSel = new Selector(Agent.class, "agentStep", false);9 u& {0 d7 F+ \ f$ B7 \
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 |7 R ] i4 u& j
2 K; }3 c0 v) p: f actionGroup.createActionForEach$message(list, agentSel);
, B; M. _) B0 n8 l actionGroup.createActionTo$message(this, swarmSel);2 z6 ?& t6 F; E% N
schedule.at$createAction(0, actionGroup);
/ { W; E1 ^3 l5 X8 k5 s* ~. W; U; }# a schedule.at$createAction(1, actionGroup);
+ J* L) J4 i6 t" ~" U0 @ schedule.at$createAction(2, actionGroup);
, L0 I/ h6 M* k) g4 N- p
" j3 n' p+ I8 m/ A( N } catch (Exception e) {
- V& y/ b) {. W/ A e.printStackTrace(System.err);3 T1 {4 |: s! D- v! I6 E
//System.out.println(e);
& ^4 r( b7 X( Z0 r! E/ y4 W System.exit(1);( x: U: S5 n: c" E6 N1 e" h
}6 D, E( P! {! @# U% k! @7 |
% K; D+ m# c* `" z' J5 A7 \; @( N' n* [
}
# ?/ b/ m9 F. R% B1 u* i1 Y( y# s( O0 t% S
private void swarmSetp() {
: g0 W1 m+ T+ m7 W2 p2 _ ~ list.addLast(new Agent(Id));
v4 X0 t9 ]8 m% x Id++;+ J) _8 k) V* q2 x0 f$ `8 B( E' \" S
}6 }( d. ]8 R& o
?5 s9 }" a% b) e6 v9 h7 B
public Activity activateIn(Swarm context) {
- F! ]$ S4 p7 g% p super.activateIn(context);
' }" q$ b c8 f& D3 p schedule.activateIn(this);! b3 O# o {8 Q2 i$ S( Q" l6 x
return getActivity();
3 a/ A2 @, q9 T, t! K" u+ v }
( R/ r) C4 G- V8 Q* d# e% v) h+ \) W1 G
public static void main(String[] args) {5 j' k6 |7 G7 {& x
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, Z& T7 Z& `+ e1 n6 I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& N0 W1 ~0 Z2 }3 h C0 S
swarms.buildObjects();
$ L$ x0 ^' B% j. Z- [- f" q. E swarms.buildActions();9 h7 c3 K; K6 i4 X
swarms.activateIn(null).run();
7 R8 j, T: S" b3 q I! X% Q }
8 G# K# P1 C e, h1 S8 T
2 C5 |( _' E$ z* N) P# C- Z/ d} |
|