|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( F, e L+ X) o! @0 {8 D" T B M
7 }7 E" ~ C$ H; N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 I3 M$ f' h; p- f: N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 o' M5 P. o2 O% j9 [swarm.SignatureNotFoundException0 N3 v6 T% T8 G! {" G: l/ I. m" H
at swarm.Selector.<init>(Selector.java:76)7 M' O" y% R4 [) t
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ w5 m9 p, c& q+ s- D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( i9 i7 l ]7 B% t4 D0 k) J* @
6 y% B2 A: X1 U, V) b8 t0 T0 y: K/ t( ?. g
import swarm.objectbase.SwarmImpl;
) O+ r j0 J6 a% u9 z$ R& qimport swarm.objectbase.Swarm;
0 w. x3 ?# d0 ^& v: Y: q/ w" ?" kimport swarm.activity.ScheduleImpl;
. J5 ?) i3 U1 I4 r! i9 ?7 N3 D9 simport swarm.activity.Activity;, { Y4 t0 R) a7 j. P
import swarm.activity.ActionGroupImpl;* V9 o7 L0 g+ P+ v7 `
import swarm.collections.ListImpl;% q e2 v: s9 F3 i! r$ E: N
import swarm.defobj.Zone; a* i' F Y L- @( D
import swarm.Globals;: H5 u$ z% [8 C1 F# g
import swarm.Selector;& S& Y( V- g! l
import swarm.activity.ActionGroup;
! T0 Q- j2 ?* \2 y1 A" j% Iclass Agent {0 ^/ _# V& c3 h$ l
char id;
' L5 ~" o6 l0 q( M( ?# W4 g& j: ^3 N- [; r I8 R/ x5 J/ g
Agent(char id) {
8 L' m( C' s5 w; z this.id = id;
+ v7 u* M9 g! ~4 q9 U3 C- E: e7 M }3 j2 e8 M2 v: Q8 z; h' z
8 V3 L1 g/ O( q% S: U
public void agentStep() {& f" l1 k! ?1 x/ u" I/ i+ [
System.out.println(id + ":" + Globals.env.getCurrentTime());
, Q x& R# d8 T9 G }
6 r4 a/ m6 Y- I+ T$ \}
( s f6 j6 Z% `5 Y7 y, A# C0 g& `( p o+ Z7 _3 ^4 D
public class ActionGroupDemo extends SwarmImpl {5 j$ L# [! d2 N5 `
ScheduleImpl schedule;: N! ?. `5 |+ M7 _. V
ActionGroupImpl actionGroup;
J8 m I1 M, p: e0 K ListImpl list;7 i( W( b: U4 T( c0 h0 d1 K8 D
char Id = 'a';+ X. }4 P5 v V3 T" ^/ u
6 Q' k3 d. P2 H ActionGroupDemo(Zone aZone) {% h3 M. I9 {. K6 J
super(aZone);
$ G+ e7 p5 X6 s6 V3 D list = new ListImpl(aZone);+ C; l/ N0 J$ z0 M, W: s+ o% ^
swarmSetp();+ F& Z e C+ ^# N
actionGroup = new ActionGroupImpl(aZone);
7 W. N2 r; o* W0 }& I schedule = new ScheduleImpl(aZone);# h& s* P9 N8 t9 o; k6 U
try {
) a; X9 ^ T4 O9 C% y Selector agentSel = new Selector(Agent.class, "agentStep", false);5 J7 x2 g6 R. M! W3 `1 W x7 R
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) K# |. `7 Z0 ?6 f: K
* D- w8 h$ x$ P9 a; g
actionGroup.createActionForEach$message(list, agentSel);
! M `% z9 [" W) d: w, X actionGroup.createActionTo$message(this, swarmSel);
+ |5 Q2 q9 N! O d, ~8 S. l: G schedule.at$createAction(0, actionGroup);
7 I. {6 Z1 M8 L+ b1 q% I* T* G9 d+ Q schedule.at$createAction(1, actionGroup);
) t! J2 v5 G$ v$ W. ] schedule.at$createAction(2, actionGroup);
3 I6 U$ P+ K" @% O. U4 _& m# _. f) W4 Q7 T/ z8 l2 k) _
} catch (Exception e) {, I# T7 F* k" H. \2 T q. ~# x
e.printStackTrace(System.err);
" M: B& X1 q& B //System.out.println(e);
, @4 A4 N3 y; V( Q; B6 Q" P* x% T. k System.exit(1);- }7 \. E9 C! p4 a
}! U' \1 u" e( o7 B' J* A3 C% o
9 H/ S! i0 i7 D/ [7 ]8 P* H3 Z% N% \+ Y# G" c; H
}
/ v5 g8 y: O3 S/ I8 @" b" d- w7 F4 s- }
private void swarmSetp() {
9 @" S0 G4 _ d O$ i list.addLast(new Agent(Id));6 f6 z- a* ~( L5 }% r
Id++;$ C# G" i# f5 G0 S: R: w4 b" Q) S
}' H7 D0 F3 v/ I2 l) _- G8 ~- E. {
3 }3 I. _6 x4 T& c* u2 E7 y
public Activity activateIn(Swarm context) {* k+ ~* F' |: r; j& G
super.activateIn(context);: b/ y! A7 V$ h+ n# D
schedule.activateIn(this);
! ?) D% [ m0 X: L; i; J return getActivity();
0 W7 R6 @) k, O7 Y) G# q: r7 a }* @; [- ]% X* F# [/ D. o
9 Y8 q( P) V2 i5 C
public static void main(String[] args) {
- Y3 l: r3 K; z& Q$ I Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 J$ q, v8 o2 {: e6 ? Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* \% K( H+ ` F swarms.buildObjects();
( O9 {- G$ t3 S5 e3 v) C swarms.buildActions();% y5 q5 \, i" I
swarms.activateIn(null).run();8 L% B5 e8 [6 t& e9 f# |
}
3 T' y1 G" {* q; r' ^2 j, @( X/ h+ r
} |
|