|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. I' I4 f/ c e5 J& T+ N
% I- Z) X; x' W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 v* F) Y4 ?! }1 @% t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 x3 h8 f/ v6 g" \' J
swarm.SignatureNotFoundException9 Y" u2 M$ n+ A2 w
at swarm.Selector.<init>(Selector.java:76)
/ H3 Z5 T. b; z' r; ? at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; E* V9 _* I1 E8 d6 y at ActionGroupDemo.main(ActionGroupDemo.java:67)# m+ ~7 I9 u; f9 q
6 \1 \! ~+ ^2 i* c2 \
6 v$ @! R# P# }) F! V$ @import swarm.objectbase.SwarmImpl;
( z) Q* ?+ k* d* Dimport swarm.objectbase.Swarm;, ?8 @" q+ z& V8 H
import swarm.activity.ScheduleImpl;9 e8 s3 ?- G2 ]/ s
import swarm.activity.Activity;
5 ~' \: |, _% k8 U# [import swarm.activity.ActionGroupImpl;
2 ?( o/ @( z) q$ B! C2 `7 jimport swarm.collections.ListImpl;6 p) w8 Y" _/ g7 j' V6 o u
import swarm.defobj.Zone; 7 i8 `8 \& c2 o- ]4 D/ r; }/ N
import swarm.Globals;
6 R4 z: o; c* d1 yimport swarm.Selector;
! n; ~- u) U1 q% p' _- Z+ W9 I6 ximport swarm.activity.ActionGroup;
: i3 b) P/ v0 f& h) X. J/ N, {( [class Agent {% s* F+ q2 j- `* P4 {/ g7 u: F& ^
char id;
8 W( k- o) D4 u
: j% q; q2 M5 @% w Agent(char id) {
: ^% m5 X3 q) M" ] this.id = id;
9 |* [: X) W/ }9 n" n }
: v* S1 S9 f6 N5 J% k; ~, u4 i) e( q/ @" @5 {/ C9 o* b
public void agentStep() {) y0 V# u4 S! |( z! E
System.out.println(id + ":" + Globals.env.getCurrentTime());
; \" j5 Q7 c* m* \' z1 O$ y- |: n }& e3 v% y! ]6 z( N6 f) J! K
}# g2 p& ^! J+ P2 o
! b& o$ Z0 T4 P; Q3 _public class ActionGroupDemo extends SwarmImpl {
' \. w1 O0 h2 F+ M% s7 J: Z/ m ScheduleImpl schedule;
$ `' h1 p2 j- C% O ActionGroupImpl actionGroup;* P0 G0 z2 C6 Y1 {0 L6 w, d
ListImpl list;
/ Y" K! _, v F4 ^4 v: @8 E char Id = 'a';
6 S% O& B$ O1 T# l2 A' Z, h- c& K' x+ T3 u2 _- Z1 V5 ^# t
ActionGroupDemo(Zone aZone) {
9 i& |- C. k6 R- a super(aZone);& A- x* L0 c; `
list = new ListImpl(aZone);
# [4 v2 A( o/ v8 i2 J& y0 A1 E5 L, a swarmSetp();
( [' n) W8 p6 L actionGroup = new ActionGroupImpl(aZone);
( c1 ^' ]6 R) i# u/ H% k2 Z schedule = new ScheduleImpl(aZone);
+ @: A( I0 ]# A9 [6 \ try {
- W$ v1 i3 o" H Selector agentSel = new Selector(Agent.class, "agentStep", false);2 S1 H+ E" a1 R1 I. P4 S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 Y. ^' j0 H- X. F+ O' j! B/ ^ & ]. I9 O. ^7 q, j- U1 k
actionGroup.createActionForEach$message(list, agentSel);$ S: h5 `* m: Z0 r- q: `9 K
actionGroup.createActionTo$message(this, swarmSel);+ { z, C! N0 ~; ]) R1 X( v
schedule.at$createAction(0, actionGroup);
8 ^4 W6 P: o: R/ H' r/ n schedule.at$createAction(1, actionGroup);( j) m& j. _! U1 l4 V! z, b; [
schedule.at$createAction(2, actionGroup);
: I( }* ]& i( @; G, ^: d) S: p9 \7 ?2 o
} catch (Exception e) {
6 }* I. w! Q+ ` S7 J e.printStackTrace(System.err);
. N, D7 g3 v: U& U2 p //System.out.println(e);0 O. [$ y; y! |6 K8 { x' y
System.exit(1);
2 z1 Y- t7 j% v$ N, W+ v }
# a8 t6 s; U1 Q4 H; Q& v% y; y
5 Z, G2 R8 Z. m9 i) f
) S9 O7 V( P+ K+ L9 T }
2 j' n# o! k9 W! H' w- v" `2 H& L! D/ @0 W1 j: J
private void swarmSetp() {. v3 @2 W3 k3 z& b9 k- f& V$ R; J5 F
list.addLast(new Agent(Id));
2 X$ o. G* h( a+ F9 V: P( Y$ _, @ Id++;
9 |# F+ b% f5 g+ f$ \/ g }0 U& o$ h. r$ F, x! X
" e W5 |) j$ [, h ]; @
public Activity activateIn(Swarm context) {- o U$ |+ a4 l; w1 `! \, R
super.activateIn(context);( e/ G: z S: }) E3 F
schedule.activateIn(this);- e( v7 F6 A { p$ D* c
return getActivity();" {: S0 Y; g8 i7 J
}' K. m) m% O, M$ R
$ |! Y* S6 R/ s
public static void main(String[] args) {
& x5 a/ P/ _: _4 C6 n/ V4 n3 n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 T6 }$ `; } z2 g# }- |( ^
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ J$ q' X: x/ d- B swarms.buildObjects();5 ]6 V2 e5 F( ^ b
swarms.buildActions();
6 f( N7 l+ {# L9 H N swarms.activateIn(null).run();! o; V5 n) k4 V
}
6 J8 Z! _0 F0 q: ~1 X" M4 q; ?
# ~/ B4 y s( J6 b' w3 a} |
|