|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & k. W- X4 \/ Y2 }1 p
& ~$ b' h" d/ G) D. P- R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% u2 Y n/ H7 C m2 l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 [' F( F. x; M
swarm.SignatureNotFoundException
; s9 W/ k+ G) N( n$ W5 q at swarm.Selector.<init>(Selector.java:76)% D) [5 T- N+ q- R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" h1 [+ V6 [: |% J% s/ T# V at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ W5 Y3 S/ E5 n7 |- M$ N2 a8 T4 Z0 O* q7 z+ m3 F' I
) t* U* V- e M9 i+ r) k& S! T2 M
import swarm.objectbase.SwarmImpl;8 ?6 G7 ^4 B! ~; T1 J* e* z
import swarm.objectbase.Swarm;, F- q" l! X- l$ R8 ?3 b3 G/ H" v
import swarm.activity.ScheduleImpl;
" ]( p- \! h8 S5 c8 F9 a4 nimport swarm.activity.Activity;$ Z. |' }5 p, O3 q/ M- @; \
import swarm.activity.ActionGroupImpl;' ~8 L4 A$ w6 a2 s5 @
import swarm.collections.ListImpl;
9 Y* |4 H% U: f' l4 Limport swarm.defobj.Zone;
, z, Z) X! O* qimport swarm.Globals;. }3 N# s( ~* _2 g$ L L
import swarm.Selector;
" B: D* [$ P# d8 dimport swarm.activity.ActionGroup; 1 ^! \1 {, ~) |0 Z7 w( i7 U
class Agent {' z4 n7 a( X. b8 y! l* h# f
char id;
6 a; ^* s$ p0 M0 ] A3 h/ }# a/ N) W6 l) W
Agent(char id) {
2 C0 S1 ?8 j9 { this.id = id;) c7 D1 a$ T7 i! ~; p" [
}4 z2 k0 j3 H% o5 N: ~9 D
' n: G* G5 [; l! ? public void agentStep() {
$ B' { Q4 n) j, z" k6 H System.out.println(id + ":" + Globals.env.getCurrentTime());$ ^3 S5 _2 b5 C* J& t/ C
}5 A( a9 W& I& c$ F* A+ e
}$ o6 N( G3 g! o6 ^+ C
4 @( c; s1 _3 z. D% }& m
public class ActionGroupDemo extends SwarmImpl {
5 K0 [/ T: [3 N: h/ h$ q$ ` ScheduleImpl schedule;9 K, x2 }0 X) Z( z7 P5 Z# X7 R l* ~
ActionGroupImpl actionGroup;
# m/ I, [0 `; N1 x; m' v2 g ListImpl list;: f0 c+ t$ W' y3 V+ @9 ~& J& x
char Id = 'a';+ q, k6 E4 [" G
5 u3 E( l) B! P, n ActionGroupDemo(Zone aZone) {
* o% j; ~( Z2 ?' x super(aZone);
1 K) I K0 ]' I" O list = new ListImpl(aZone);% S/ @" x" g, W, Q3 i) d4 d8 ?. `' `% C
swarmSetp();
/ \% q2 @. D3 ~/ L" k; D4 G# K: { actionGroup = new ActionGroupImpl(aZone);# F8 e6 w% |' ~8 t5 P' D3 B
schedule = new ScheduleImpl(aZone);
4 |8 l+ ]6 L& w1 M; S# s try {
) x2 _; |9 C0 ^ }$ _ Selector agentSel = new Selector(Agent.class, "agentStep", false);# g6 [5 v5 r7 F0 z& y3 Z$ f
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 g' |3 k$ g3 ~; d+ q1 b5 }0 e3 `
I9 A5 p8 k3 _: O
actionGroup.createActionForEach$message(list, agentSel);
# q4 i1 B( l* o' A& g- k actionGroup.createActionTo$message(this, swarmSel);
& |# e1 K$ p) H" s B M# ~3 ^4 r schedule.at$createAction(0, actionGroup);9 a, J0 ^ X+ c4 F! ^ s
schedule.at$createAction(1, actionGroup);
1 H# H5 E1 \ j, P; l' m' ]9 Y; C schedule.at$createAction(2, actionGroup);
$ @% S1 y- Q. y t
8 Q C: R: t+ i) ]' U# ~3 B } catch (Exception e) {' G# T# ~! q6 X6 o
e.printStackTrace(System.err);
* w& B+ j% U. e/ S) W' _7 |" J( f( v( n //System.out.println(e);: w/ ?7 R/ s9 Z
System.exit(1);
! @1 X v4 E( q" ] }
6 X& ~+ f" V6 c4 ]1 q% ]' I, u* z8 A4 U' B# K0 s- P$ b7 X& N k
: `2 E0 w$ V- U- z0 O
}
$ n0 K& w8 B- ]
: k2 M! i* H0 A) k private void swarmSetp() {" V9 _! d, Q+ |8 b2 @1 b! I* r" e
list.addLast(new Agent(Id));8 \+ N# ]9 ?! w
Id++;+ w8 M" s7 V8 K& M% m% Y
}
8 X- v% T. w2 C1 B9 r* z/ Z8 w4 n: [! n# i8 s
public Activity activateIn(Swarm context) {) } A% F! y- x- X( \
super.activateIn(context);
: X' d) a& y* D( i$ `+ { schedule.activateIn(this);
8 @0 `- V, q* { d return getActivity();
/ L- g; r g( _* q5 e }- x& v$ ^* Q# S7 |
5 M. X4 ?% `6 |! p
public static void main(String[] args) {, M" F. T. z4 q. y4 x( _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; ?# W' \& C# Z" V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 s# O, q4 @5 |$ ?2 B ? swarms.buildObjects();: e: p( S4 `4 N' k
swarms.buildActions();
8 R7 C: U4 _+ a4 U2 n! ?6 |. Q! o2 W swarms.activateIn(null).run();& L( u$ j% q$ W- y9 M
}$ T0 l/ g* w/ J P4 f& X- q
. Y( j! y3 t, C4 D" m
} |
|