|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - u! C1 a) W& P q1 [
1 z7 I- X8 |, t( C9 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% j; c# x h4 v- G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- Y. u7 }: u" k3 }! x$ D
swarm.SignatureNotFoundException
" V) H' o; G* z" v at swarm.Selector.<init>(Selector.java:76)
5 }: c% _5 ]* a- N, q9 [ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 q/ i" o* b7 h& |6 ?6 M
at ActionGroupDemo.main(ActionGroupDemo.java:67)4 F! _% p; G0 x# L3 f+ k
9 Q& ]# i+ |9 l4 i+ e5 h( l) w
5 |2 c+ X$ b1 ~, J
import swarm.objectbase.SwarmImpl; G% [1 h4 V2 O& o
import swarm.objectbase.Swarm;2 n$ |) C" @- x* j' o% R2 s
import swarm.activity.ScheduleImpl;+ g3 \& M! p5 _9 i
import swarm.activity.Activity;
' b- J. D. ]: O3 \import swarm.activity.ActionGroupImpl;
9 t- c+ z/ I: x4 T) l; yimport swarm.collections.ListImpl;
- ?! K( J* F0 Vimport swarm.defobj.Zone; 8 T5 _% p1 r& m* F1 y* `/ h& s
import swarm.Globals;9 W& d" c- X3 I0 K: K0 B2 x) m
import swarm.Selector;$ s6 B a8 C7 W, w
import swarm.activity.ActionGroup;
* ~1 i" O* }5 n* f8 }4 kclass Agent {
+ ^% u7 r b; t' ~. |& I$ a char id;0 p0 a5 Y. W9 g( C% Q/ C, K6 O
) y/ Y# q* O! E Agent(char id) {
8 z1 ?4 U0 z) H2 M: D; h8 V this.id = id;' I4 y/ J. j& ^! t i0 L
}
4 x' l) j& ^8 \, e& e
, Y; q7 a7 [& G0 V public void agentStep() {9 `% n6 A8 I& w z! o
System.out.println(id + ":" + Globals.env.getCurrentTime());
& @0 L" s3 D" X b }$ T4 R! j9 |4 L2 y7 @
}
& m, _- u0 J$ P7 @/ v A( `
- m+ S7 Z- o( k# h' X5 m8 O4 vpublic class ActionGroupDemo extends SwarmImpl {
8 [, N0 ^3 o. x: F ScheduleImpl schedule;
( l7 E0 _7 {) }2 W ActionGroupImpl actionGroup;
. c$ V! R" S5 _# h ListImpl list;0 y7 l$ R+ \0 V6 |
char Id = 'a';
$ O `) c! S6 e2 p
) W3 z) t4 I' t ActionGroupDemo(Zone aZone) {
# F# z& Z8 {; G6 t# v0 a super(aZone);, t2 Z, F8 S$ x1 t
list = new ListImpl(aZone);
V9 a: q4 c) v$ o& M( t* z swarmSetp();
5 h: Y r( D% Y; O; Q/ v actionGroup = new ActionGroupImpl(aZone);$ ]1 z+ t# \3 d t8 h
schedule = new ScheduleImpl(aZone); i& s4 y% N4 q1 f
try {# L5 j5 q$ F( E7 r# Y1 D/ ^+ l
Selector agentSel = new Selector(Agent.class, "agentStep", false);- b5 e4 D' C* E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. P! \; J+ X# X5 P+ q g
1 T+ z0 N: U+ E) R+ I* T actionGroup.createActionForEach$message(list, agentSel);% E5 {$ H4 B f u7 ^# y. I0 y
actionGroup.createActionTo$message(this, swarmSel);
/ E$ u2 G0 M; Z0 E schedule.at$createAction(0, actionGroup);& N8 ]( f: T6 x# b8 c$ A
schedule.at$createAction(1, actionGroup);+ j. J$ A' V' e" S* R( a& ~
schedule.at$createAction(2, actionGroup);0 n* h7 z$ Y0 w
0 _1 |& _2 W* M# X/ F7 ? } catch (Exception e) {
9 ]1 G- m" j$ N e.printStackTrace(System.err);
3 a9 c, u2 d+ V, w) f, ` //System.out.println(e);. l5 H8 t" r: f
System.exit(1);* O* X3 j" M k
}
2 q( e5 }+ N% V, b' _, R6 c# f; ^" K. \# X1 w2 ~
# e4 |4 u, H8 _+ o1 f+ b$ B% Q }& X. `8 @1 b% r8 @# c- L; s
" A; {/ J; L: R0 q
private void swarmSetp() {
% R% f! X" f( n" A$ E* | list.addLast(new Agent(Id));3 d2 l8 W1 O2 ? {' _) ^' X
Id++;+ L2 j; L. X% q! g* g7 v
}- F7 ]! r2 L" q$ p2 _
* `3 b3 B6 ^2 `1 A# ^ public Activity activateIn(Swarm context) {
" ] |; ]# q; o$ n% g- t super.activateIn(context);
3 k v$ q! C3 Q0 _ schedule.activateIn(this);8 X9 q; H+ N& c. Z7 u8 W" Z" N
return getActivity();
& a+ k Y+ K: z }
X, L* Y# W# i" q0 ~5 b" A9 Y& `
* l, O$ j* ?2 y5 l& {1 s9 M) ^* b- ~ public static void main(String[] args) {8 P" @! B8 N. s# C8 l2 d
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 {; V7 {% p& O( @( U. I) }( c
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 ~/ O& |* z; }, h! [6 ~
swarms.buildObjects();
7 T" J4 r& ^' l c2 Y swarms.buildActions();) @2 q+ P5 J- A" A, d
swarms.activateIn(null).run();
9 N. W; ~. I9 h9 V1 N$ }1 Y }$ o( J8 ~) U# R% ]$ J! W
2 n7 e! z0 l" x7 K; ~. \/ r} |
|