|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ j8 f# u+ v- e# V! T
. L4 F! L- e( u' C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 a2 H; W4 u7 `: n8 e, V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* U6 I+ h. h) X6 P( J4 W8 Bswarm.SignatureNotFoundException( d ~- B+ ?. a y3 \- y9 [
at swarm.Selector.<init>(Selector.java:76)
4 r/ A/ I3 U% ? at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 h3 [5 `5 p1 }4 Y+ t- t) H/ }
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: z. m# `+ j3 F$ A0 h6 d7 B* } v9 I2 S4 ?1 I5 w0 P
. J3 Q, E" g: g( d6 {4 |* S' V
import swarm.objectbase.SwarmImpl;2 [) M3 \! R9 c. X6 O
import swarm.objectbase.Swarm;; o5 W7 N/ {7 r9 l* Y: D0 h
import swarm.activity.ScheduleImpl;$ h$ S! c9 [) F2 R' h& {) a
import swarm.activity.Activity;' j/ s. U, s! f5 E
import swarm.activity.ActionGroupImpl;
1 d. V4 r% I6 ]% eimport swarm.collections.ListImpl;
7 `' J+ f5 z) f$ bimport swarm.defobj.Zone; . t: m0 {8 n( e! O1 R+ ]
import swarm.Globals;
$ E/ [. |' a7 i6 m/ @! Wimport swarm.Selector;7 O! |! D! [! y$ x4 S( `) G. p
import swarm.activity.ActionGroup; * q9 t4 V4 T% G1 M7 e
class Agent {* R! Q# o9 g* N7 V+ m0 ?! N
char id;/ r2 q7 `2 p& z+ N
. s( D* a: h9 D0 D( O
Agent(char id) {
) @, o: v" o) O/ f3 E this.id = id;) j5 y$ b, `! l' E5 z! y
}( p, H2 P, Z; O z& m
8 v& A" u7 ?3 x6 [ public void agentStep() {
" _, y% a1 W8 v6 u3 a- j System.out.println(id + ":" + Globals.env.getCurrentTime());5 [. a+ i2 [- ~3 D
}
/ |# f/ `& O# F}
# D6 r3 G, h! W) v8 q/ W8 T. o$ h: x7 @# q) |$ m0 f3 b' R# M! u
public class ActionGroupDemo extends SwarmImpl {& _4 ?# |# `" z B- F x
ScheduleImpl schedule;
6 j, G g1 Q+ }* P2 n% U ActionGroupImpl actionGroup;/ L$ b5 N* Z3 y: y9 j8 B! w5 O
ListImpl list;
/ A7 j* q' o+ h char Id = 'a';
" J6 C% P! q% E [( W& x/ C1 S/ g" f) q Y* [' o) b
ActionGroupDemo(Zone aZone) {
( U# q$ c6 s1 n6 _! d% D super(aZone);7 Q7 H. P% C7 m) A2 L0 W+ o3 c+ z2 c
list = new ListImpl(aZone);/ x _+ x% c( ^, J0 i5 H0 T
swarmSetp();
* l c- y$ b4 F' E8 H5 d7 k6 v actionGroup = new ActionGroupImpl(aZone);' I3 m" K2 z1 [7 r [
schedule = new ScheduleImpl(aZone);: D; g Q, h3 b9 I0 b$ c
try {( D, h& G% ^% u
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ R# I1 Y$ U8 m5 M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. d9 z( w) Z4 } $ @% ?5 o; a+ Z; S
actionGroup.createActionForEach$message(list, agentSel);- y, F/ R5 S9 z
actionGroup.createActionTo$message(this, swarmSel);. Z& B- ]8 K' s
schedule.at$createAction(0, actionGroup);+ w4 Q p/ t! W5 D& R: q
schedule.at$createAction(1, actionGroup);
: e+ |0 `4 J7 `5 X* X schedule.at$createAction(2, actionGroup);
x2 i1 ]* C3 ~5 S8 G$ m7 g. \, d2 q5 l
} catch (Exception e) {5 s, I, J/ [; ~4 B% |9 C
e.printStackTrace(System.err);* E& N- u2 W$ \: E9 u
//System.out.println(e);
: w& b& m1 l+ {( z System.exit(1);
. K& z, e1 } i6 o }
' f! [! Q. X) A1 ^
( ` |* _4 v5 U' O! T$ M& ` F/ U/ t6 _* V9 J; U- [
}
+ s- L$ M L) }! ^
+ ?0 l% @' F& V private void swarmSetp() {
& F: P. q$ p) O- X# C: W7 \ list.addLast(new Agent(Id));2 e# o6 n4 t3 T( `0 N& l
Id++;. X& q8 t f6 l! w% n+ D+ b
}
- x W( `1 S S7 t* |! n, C( ^" x3 O3 J+ W3 g
public Activity activateIn(Swarm context) { z4 B! a$ w+ ^8 z5 E9 w
super.activateIn(context);) p: F, a/ X0 p/ S5 B
schedule.activateIn(this);0 a8 d/ s, D; s) s, C/ s( W
return getActivity();
8 @! {; V4 l4 i2 ?* K7 H, |: O }
( d% }3 t7 f& b: ?
# Y/ a6 O, `: l6 T) [ public static void main(String[] args) {
2 x2 `1 \( `2 x0 r: \ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 U1 s3 J9 y. y. w& N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 j5 y6 c% j& I3 y5 B, b% k# b$ k swarms.buildObjects();
! m6 z0 t; ~$ [ swarms.buildActions();' s) h8 {0 x4 U- B* K$ [
swarms.activateIn(null).run();
% J0 @) g, _& ]7 W }1 Z" e) C4 f! Q. `& E
5 T: P4 q% x+ o+ o X3 m} |
|