|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " f* s# G) Z5 }/ ~+ @; |* v1 R
- a" b9 Q( d7 J6 w* m- h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- X3 K/ s2 u8 F1 v8 Z* v! N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. k* v% `! e8 n
swarm.SignatureNotFoundException
8 N Q3 {0 @% v1 a* X0 j; s/ D6 y9 p at swarm.Selector.<init>(Selector.java:76)9 h* L! }$ U! |2 r3 o, I
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 w# ]+ c5 u6 c at ActionGroupDemo.main(ActionGroupDemo.java:67)( W0 G) ^ {* J+ j0 P! F, l
' C; T2 M( [- [5 Y6 b5 [
# i& j; w- z' P, J2 ^' \0 r4 H
import swarm.objectbase.SwarmImpl;! c% t: p" V2 v& d
import swarm.objectbase.Swarm; n- P& r! s/ O: n; n9 |
import swarm.activity.ScheduleImpl;' F+ q6 ?* I4 q) f7 D) D# s
import swarm.activity.Activity;
- E$ x$ { ~) g" D/ Eimport swarm.activity.ActionGroupImpl;
3 l' [$ `+ V3 E# Q' h' [7 V$ ^import swarm.collections.ListImpl;
( U3 A: R4 E) F3 V+ y$ simport swarm.defobj.Zone;
/ T4 A3 t ] a4 k' M( h: {import swarm.Globals;7 \, |, j/ _5 N
import swarm.Selector;. Z: i" L+ t) i: f! R! _" Z; B
import swarm.activity.ActionGroup; 1 n' G% Q, s9 N% E B" [# z. t
class Agent {$ g3 O. b6 D0 N
char id;8 `$ V9 J, B9 Q# n4 ~8 I4 P
3 J* O: j9 u* `0 b( [3 `
Agent(char id) {
! S% E7 P8 g$ O- G! K this.id = id;: D; h* m% M) K: S( O
}
8 ]* l! |+ r0 H: f& \- b* N2 V9 ]+ Y8 b8 H, y z
public void agentStep() {
8 r6 O% @$ C" l& v% b) [. y System.out.println(id + ":" + Globals.env.getCurrentTime());1 H2 `. q4 h8 C5 Q, a4 l
}, b1 d- B4 J* M5 Y% X& c7 P0 g2 x, s
}
0 c* y: K5 b' W P5 Q- k J
2 H* t( i; r$ Mpublic class ActionGroupDemo extends SwarmImpl {; @8 [" X7 T \% p+ k% t9 F
ScheduleImpl schedule;
# \1 Z$ x, A- s6 N2 E# e ActionGroupImpl actionGroup;! q2 o7 G/ T' g# c: |
ListImpl list;6 g5 h/ q" H: X
char Id = 'a';! g- v# n% R/ h/ {
/ C, m. r f1 G7 R: x. K* a" n ActionGroupDemo(Zone aZone) {( I/ O: B) K& C$ t( H8 H
super(aZone);
. _2 B0 ^( b7 @ list = new ListImpl(aZone);
$ F. y- q% \, D$ T0 c( y& m1 P swarmSetp();
( F$ G( j& I8 p" B actionGroup = new ActionGroupImpl(aZone);% O/ C. V6 m- H; i. |# O5 R$ q
schedule = new ScheduleImpl(aZone);
6 g) Y* R% \' D) K8 |5 H2 V try {% ^3 D2 G! r' H
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 Q+ V( D/ H0 Q# a h- ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 N4 I: q- C0 n# L
! r+ Z3 g- G+ d7 c$ [ actionGroup.createActionForEach$message(list, agentSel);1 O; O0 t1 v2 b6 P0 W% {% ~
actionGroup.createActionTo$message(this, swarmSel);
: e9 L% @& r3 m$ U; H schedule.at$createAction(0, actionGroup);
$ i. v3 F, F; W( m schedule.at$createAction(1, actionGroup);
. V9 Z% p8 `8 \; P+ [ schedule.at$createAction(2, actionGroup);6 }: P6 ]' |9 w/ h/ [
$ O, h1 c5 U! |+ d' c2 I3 }5 F } catch (Exception e) {
6 @0 l- [0 g3 u e.printStackTrace(System.err);
+ h0 f: P0 _- T: I //System.out.println(e);& j5 N) {3 l4 V5 s& p2 ^
System.exit(1);) `/ [1 J- }/ n
}: ^5 p2 {1 L7 `/ J% o$ m
& U8 X4 c% h3 T |
0 i V N& p% a G* Q* N
}
2 {% J! H5 x/ E# f! @2 }5 h
3 f4 R- P% K" H3 M3 K- H private void swarmSetp() {4 P3 D# m& l) a, n' C7 c
list.addLast(new Agent(Id));
3 }* p! c' A% e5 c, ]( e4 k Id++;
* X; R% y* Y5 y }* K! F& I+ f' M0 M% ~, V
9 \7 W: S2 l: {5 t
public Activity activateIn(Swarm context) {* Y) B7 `/ W3 U$ M/ D) o; Y
super.activateIn(context);
# f) G; T9 l1 `8 m- H# k+ t schedule.activateIn(this); `" j+ O& U& p( j% v/ O0 W, S
return getActivity();
4 |4 \0 u7 U5 @8 T0 b }
3 L" w) U' q2 \ P( g: r; n8 A- F0 j$ p4 J/ k5 J
public static void main(String[] args) {- U8 z* e& V& J: b& ?' j8 T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 t0 T* j0 [7 Q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 Y- {/ O, b' [. P7 h
swarms.buildObjects();( U5 B$ U! \0 b. b2 B% T
swarms.buildActions();$ O2 h2 A6 h/ Q% Z
swarms.activateIn(null).run();
8 ~' w0 K) o" m+ E0 a6 c$ \' @ }
* L0 v E' @% j1 \4 b1 _0 O" d6 M/ L
; @5 g% E/ I0 X6 K! s} |
|