|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
w3 j N# [" r/ }
1 U- M: H3 v4 L$ o2 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 S5 c# S7 C5 n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. L- ^9 J U6 m" A6 w7 q! |; n
swarm.SignatureNotFoundException; Z. i7 r: U, t, A) J- I
at swarm.Selector.<init>(Selector.java:76)% c4 [4 H/ l( z- J2 e3 A P# ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 f7 n7 I2 {* w8 s& d4 I/ E# F$ I at ActionGroupDemo.main(ActionGroupDemo.java:67)
* G$ T$ B5 U: W$ b7 \
; s5 O9 D0 v, h: p+ Z' R' t" S, q8 w) M
import swarm.objectbase.SwarmImpl;( {4 o0 P% C8 n! k, x2 ]! V- k
import swarm.objectbase.Swarm;
; m1 L( B) W; m ]. l9 t& Jimport swarm.activity.ScheduleImpl;
7 o% S+ m7 g0 T' c' `import swarm.activity.Activity;
# ~5 ?) S; J! c, O6 v" U* F9 }4 Jimport swarm.activity.ActionGroupImpl;
1 ?; K0 u+ V3 `; Q- qimport swarm.collections.ListImpl;7 l% l; h" Y% Z
import swarm.defobj.Zone; : r6 a! m. V) V9 X" k
import swarm.Globals;
/ o; K* o1 E9 f2 s% d3 Qimport swarm.Selector;; ?. i0 w: h/ f2 b0 }8 A( ^
import swarm.activity.ActionGroup; 6 Q, b: q/ t* [; o5 l+ F! }
class Agent {
: x, B3 ~; S' C v' F* t3 e2 d char id;
2 P5 i# @- H7 d: I! U9 q4 k# I8 o3 h. p
Agent(char id) {# q U* P0 W" }5 o
this.id = id;: z% Q3 o! E, i C5 {
}. M9 T# g. V) C# V: K# V
- j. v" x8 g e, ]
public void agentStep() {6 c( }/ [# M* t8 l% F5 K6 p
System.out.println(id + ":" + Globals.env.getCurrentTime());- ]- b' E! L0 p# ]" H
}5 ~. R$ @* k: Q2 |: r/ B: L3 A1 p+ S
}
0 P! p& U0 G+ P
9 g6 {8 N0 `: m3 P; c# _public class ActionGroupDemo extends SwarmImpl {
; d( Q9 C0 o% ] ScheduleImpl schedule;) I- ?$ s4 \8 Z4 a
ActionGroupImpl actionGroup;/ j# h- M W9 `; d
ListImpl list;, |5 U% Z) I, M5 _5 `# D
char Id = 'a';& E. d1 v0 I; ^3 }. M& ~+ @
: J+ c2 k) p7 f( ^+ H# p/ d- @. d
ActionGroupDemo(Zone aZone) {( _& L$ J+ L( o- U1 ~2 @
super(aZone);
1 P) D5 Y: G4 T. Q6 x7 Z. { list = new ListImpl(aZone);
2 P9 s& D/ I1 W swarmSetp();; y5 M' q! X4 \ I) \9 O
actionGroup = new ActionGroupImpl(aZone);
' {9 C5 C3 c0 z+ i* D: ? schedule = new ScheduleImpl(aZone);8 r. ^& |$ x% B+ U% `
try {3 [( }4 {; S, C) o
Selector agentSel = new Selector(Agent.class, "agentStep", false);2 t% o; ]0 {+ k7 O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 ]7 x) q& o! Q( R$ A
4 W, {% u6 [6 w' R- Y
actionGroup.createActionForEach$message(list, agentSel);! z% A- c% I( z6 x
actionGroup.createActionTo$message(this, swarmSel);
, m# Y% E7 B+ ^9 U7 K+ c schedule.at$createAction(0, actionGroup);" t6 p E% `3 N6 i- U$ P
schedule.at$createAction(1, actionGroup);
, ?, |0 q6 Y& ~7 c4 S( C# @ schedule.at$createAction(2, actionGroup);
7 [; ~, l. T I& R
+ V" K. \2 J2 G4 r; L } catch (Exception e) {' O( } T2 H2 v1 L; o
e.printStackTrace(System.err);2 l5 ^( o! ^4 l4 U; \
//System.out.println(e);/ f R: u; c, u+ T+ k) ^. i
System.exit(1);
% f, M. R' d! L0 m. i* B }
; a4 V. I- P6 S- F/ g+ J8 l; J- L2 z& S6 R+ j
( C& U6 ]/ W+ p( h* h
}5 ^" `5 d4 }' }$ H
+ u) e7 A% g+ y8 u! ] f private void swarmSetp() {9 H+ F# K% T7 _, z( t7 Y
list.addLast(new Agent(Id));" a1 v- [% ?' K% o$ l9 j0 M7 F
Id++;
- r' H& k( [9 ^ q$ S& w% ^1 s }
" A9 C- N; P! L' t/ u) ^0 i; d2 ]/ L6 y
public Activity activateIn(Swarm context) {
' c( ]4 W0 f' z b3 _ super.activateIn(context);
9 \3 W- a3 _5 l schedule.activateIn(this);- L* X/ Q: m- R* K, L
return getActivity();6 ^1 u( z- \2 U/ _7 W8 z! n
}; P- F; p. |4 o& C
' w; X8 a; Q* T3 J1 t, ?1 j$ @2 Y0 W- I public static void main(String[] args) {7 c1 R' i, H' ~+ V6 l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 ~& c. X9 m" s) s/ H, Z. s: f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 Z8 v" z! S7 K9 ^4 `7 g" U swarms.buildObjects();* d# s- U2 C: z Z; y' m1 B _
swarms.buildActions();
. I0 x0 _7 o% |: |4 x$ o swarms.activateIn(null).run();7 u. s) p* a( G( p$ ?7 d
}
" m! e' _0 f2 d
5 I" {$ C) _0 k: ?) m6 F9 t} |
|