|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , n6 N0 ~+ n: l& C
. v7 d' q: w& |, W7 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! d3 H8 ~3 S9 S1 d7 p' A1 O+ T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& p s, Y. Q1 H% m6 ?8 b7 g
swarm.SignatureNotFoundException
. ]6 Y* i. V+ w4 w, @% A at swarm.Selector.<init>(Selector.java:76)
; g6 q3 ] a0 }8 J at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 \% n, z0 V0 c4 w$ W6 M at ActionGroupDemo.main(ActionGroupDemo.java:67)# L' K. {: H c. y9 b' e
( Q: G/ K; T; c( P$ r0 ~1 L, d( v
) b/ l! I8 a* ]; ~; X( L0 f% C8 n
import swarm.objectbase.SwarmImpl;2 p+ ]/ L9 p( @& ?6 f+ c1 K
import swarm.objectbase.Swarm;* y: B. U4 h: d; \, r
import swarm.activity.ScheduleImpl;
' W+ A2 L: B& i1 H# |import swarm.activity.Activity;. ~8 d% X% P7 p& D+ m- ^7 {
import swarm.activity.ActionGroupImpl;0 m/ o: D* s& o3 H" U. l
import swarm.collections.ListImpl;
- m' L* |9 `2 s4 _( ]7 M# j# w/ nimport swarm.defobj.Zone; 6 @$ `( `2 a5 P: m% M2 B
import swarm.Globals;" t! m4 I- i n# l3 e! A8 a, E9 i
import swarm.Selector;; O; J/ n7 @0 j; K3 K# q2 K
import swarm.activity.ActionGroup;
, c4 _6 V+ s' P9 G4 ]class Agent {
6 @% \+ m/ G# C/ ~* [& ` char id;
- r k/ n6 F' m! j7 @3 u
0 k! t' h) G( Q( L! S. A8 L Agent(char id) {/ U' Y3 J8 q7 b5 x
this.id = id;
: T& `6 ^6 z3 m }
$ T: p) |0 i4 I2 {" T# G8 H. T' s7 v: l0 p" `
public void agentStep() {
4 e* D2 b1 E& |8 c8 K- m4 @ System.out.println(id + ":" + Globals.env.getCurrentTime());' v! Y" }. u1 m) e
}" J; ?, a2 D5 [* k) s* W; A8 G
}
/ P" b& A% q/ Y3 z1 W. i4 {) ^; [0 @9 o3 L. U- |/ u) Y
public class ActionGroupDemo extends SwarmImpl {! ?2 \0 Y Q) M: {2 c4 P
ScheduleImpl schedule;0 s6 e9 a# `# |* Z# B- ^
ActionGroupImpl actionGroup;
& J/ z) K8 v- z/ p$ t0 @9 D3 z, b ListImpl list;
1 O9 L% t5 e" z' a% p6 D char Id = 'a';
( u5 I, f' E9 j1 P" _* T+ h
- R4 m) h' n1 {; n( O. \ ActionGroupDemo(Zone aZone) {
2 T5 ^0 b6 ]+ i0 ^( G& r4 W super(aZone);( u- d! q% _5 N9 p6 A4 k4 g+ P( R' u
list = new ListImpl(aZone);
5 }4 X7 x/ C! B swarmSetp();) k! ~4 ^2 k) }; d ]( a
actionGroup = new ActionGroupImpl(aZone); L7 i) D; L6 r7 ^. M% t* t1 [+ L
schedule = new ScheduleImpl(aZone);
2 u4 S" l8 E9 k, P. e8 V try {
0 F* M. n3 ]" [. _5 P) C Selector agentSel = new Selector(Agent.class, "agentStep", false);* J. F+ B) k7 r+ `( X' o# u7 b
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ j4 }! m, I. e( r$ b, v+ ]& o 0 d2 F! ^0 f% ^( H- P4 ?
actionGroup.createActionForEach$message(list, agentSel);. j3 e3 h" ^+ x3 n m: G
actionGroup.createActionTo$message(this, swarmSel);4 z ]4 w& F" t$ t4 i) M, X! m
schedule.at$createAction(0, actionGroup);1 x5 M( w8 }1 @# V( s" V, p
schedule.at$createAction(1, actionGroup);, P( {! x% Q0 ?. E2 c
schedule.at$createAction(2, actionGroup);
* g1 _- C6 h5 a8 U$ `4 @
3 ?# D3 d) j$ X' Q* l# F } catch (Exception e) {
% {3 X2 b2 ?7 M/ A4 u, S* X* L e.printStackTrace(System.err);
; q6 ]: s7 x* U //System.out.println(e);
. s, E* f- Z( f, q System.exit(1);1 e% K* I- K9 Z5 ~" M
}3 J% O k8 p, x9 i
3 U; F) K4 s7 }6 ], }
2 p. u: T" F3 m% b% X2 e
}
9 W0 W' _: V% B9 X" B4 D8 b7 U
, b0 T' H2 h6 B, a private void swarmSetp() {
, M& I5 S6 t0 S list.addLast(new Agent(Id));3 |" W" T9 Y, V+ |3 x% ?1 x
Id++;
3 K" a( b5 J2 @* i: m$ g1 d }
; Q. {; N2 ^* ?4 K; W6 ]# ^
) V5 b3 o o5 k0 r, n; M public Activity activateIn(Swarm context) {2 C9 v2 M9 O5 P O8 ^5 _' p- |
super.activateIn(context);
* k0 j" Y- M% @9 P F; C# @: m schedule.activateIn(this);
* n& R! A4 F5 h3 k return getActivity();
u o0 T7 @: a, B. r. |$ \) G% P }
R% @* j( l; Q, l" y. R2 R+ ^& W( c8 y$ |3 f0 j
public static void main(String[] args) {7 I G6 c. m; o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 N& T3 F5 Z' j | B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# P3 ]5 q+ V* A
swarms.buildObjects();; E: v* b7 L* j+ A
swarms.buildActions();
5 T% n D, z# V, r swarms.activateIn(null).run();
1 i( ` Q' A T/ L% t) p }
+ M) g9 E& _: I( d+ R, M" X" N/ h! T! I" c* ]1 U7 s" T
} |
|