|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& S6 _* c+ l: [, r6 |& J5 z
, @1 R' e+ F+ i1 ]' J) Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) G; f5 M3 w( h2 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' _! _0 y5 M$ ]; Q$ M2 R0 b5 Kswarm.SignatureNotFoundException9 `; q& V8 l' Z N5 S( P
at swarm.Selector.<init>(Selector.java:76): @5 z( h2 v2 G) B/ J6 c) l
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ C% M/ v0 q/ T8 [" F$ R
at ActionGroupDemo.main(ActionGroupDemo.java:67)$ m6 r+ O, V0 G, K+ P4 ~
/ g& k( o8 e F! ~: r* N- s* l3 }' {
import swarm.objectbase.SwarmImpl;7 g) ]9 ?! {* P9 E
import swarm.objectbase.Swarm;
* y- n: W* j& S, {import swarm.activity.ScheduleImpl;
* |" z3 k M7 wimport swarm.activity.Activity;' u* P# E2 v3 W3 U3 j
import swarm.activity.ActionGroupImpl;. j7 C9 `6 |* a2 ~
import swarm.collections.ListImpl;9 F/ O% A) F! A1 `; R
import swarm.defobj.Zone; w( E7 }9 V& g. V" _7 O$ L* i
import swarm.Globals;# ~6 t- ^# E+ K- D$ V- Y$ q+ C
import swarm.Selector;8 O: w2 b: A& I" e8 G
import swarm.activity.ActionGroup; 0 d, L1 d& w& d" c- ]0 j
class Agent {
/ x: H3 @3 ?3 Z( V5 v6 F2 ?$ w char id;- O& I% K0 m3 z" a0 i! I
: {" C( ~- t8 z: P Agent(char id) { u$ }+ m7 e/ _
this.id = id;
0 L9 \1 T- S% S- `, }; K; Z }9 O" V7 ~: Z2 J+ Z% f
# G% O% v# w9 X b7 r, B public void agentStep() {
7 v' I6 p" P5 m0 S& X' b# _ System.out.println(id + ":" + Globals.env.getCurrentTime());9 R) `4 Y! P/ ^9 ^9 O" M7 i
}$ H* T* n7 t+ d" g; J1 n
}1 f" N% i' v! l" K$ X+ E
/ l+ a9 P {* `6 V: T
public class ActionGroupDemo extends SwarmImpl {, i0 l0 U s' ~% H! @
ScheduleImpl schedule;
7 P. z/ }& z+ \7 M# m/ D ActionGroupImpl actionGroup;4 m7 \5 u* @1 R' \8 Q
ListImpl list;3 O9 W( w4 p @6 I$ C& J7 \8 Q
char Id = 'a';
( f+ `+ y5 k" P7 |$ e) O+ `. ^
' |. ?* p/ |( G0 n6 w0 q$ k ActionGroupDemo(Zone aZone) {: _0 b. T* f8 X( r5 @( K5 h
super(aZone);
& B0 ` ~! v# H list = new ListImpl(aZone);
/ S6 }" L% \" s& n* d( o swarmSetp();: I! e& O* m& T7 A& O8 j
actionGroup = new ActionGroupImpl(aZone); K- |3 ^' P- z$ l; K
schedule = new ScheduleImpl(aZone);$ [6 l/ D9 e; a% f% |$ v4 U" F
try {8 G' s2 M& c* ]; Q
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& N1 r# Q: @5 W1 P5 H2 p+ z: P Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 t( }) ]6 L! W& ~5 c) B& c5 V
3 `& X" W: [% X actionGroup.createActionForEach$message(list, agentSel);, z& Z' U) I0 Y7 R* C9 {
actionGroup.createActionTo$message(this, swarmSel);3 ~7 K! |/ }! Y' ]! U/ s, P
schedule.at$createAction(0, actionGroup);( B T* ]! Z" R( Z* a& C
schedule.at$createAction(1, actionGroup);
^, p: e* a" Z# w# f schedule.at$createAction(2, actionGroup);* ?( e0 S- E0 M; t2 Z) [- {9 w
! G6 f: Y9 i; Z! ]6 f8 S5 O } catch (Exception e) {, v# B4 b7 G7 J9 `* D6 T
e.printStackTrace(System.err);6 M8 v7 N, m3 D
//System.out.println(e);3 v& ~) u9 p$ F3 w$ O$ ^' ]; e
System.exit(1);' p, e( N, C$ o7 Z
}
8 V/ B% u- N' w3 i7 p" j1 L3 v/ N) h3 ^9 E# K g- M" @9 Z( F
) n6 a; s$ l; M& i& ~& v9 L3 Q! w0 [
}
/ O1 l; v" q* _& N h8 y( H- Y$ `& e* Q( w! ~+ T: {$ {
private void swarmSetp() {
7 _9 M5 t2 c/ x+ o4 r. L list.addLast(new Agent(Id));
7 b8 o L! T) Q" n+ s- k! P2 t Id++;; s1 |5 I" B( G) Q
}) j- _" ^6 \/ K- m r$ ]5 v* c
0 V6 N# c% F+ Z4 y- r
public Activity activateIn(Swarm context) {
9 J/ ]: H, f1 R' E super.activateIn(context);7 m2 Z- P0 r% }1 p7 [' w
schedule.activateIn(this);
: k P2 t# c7 c: e5 a1 T return getActivity();
1 D( h2 i4 G, l+ B# F }9 k- X) y" }* @3 O( [' S$ i
1 ^9 P) u8 s4 j! ` public static void main(String[] args) {1 K1 Z% a3 L: ?* j T l; e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) r" m. t; D5 ?/ T/ ~ {4 d5 w
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" r3 d6 w# j; V3 P( Y swarms.buildObjects();2 k" W W* B: o) u' n4 ?( a& F- q4 v
swarms.buildActions();
2 ^- J8 q6 F1 B! r swarms.activateIn(null).run();
2 x# G" z, E1 { }
) H7 P! ~) j8 U: Z" ]' E/ K
5 ?) C0 ]$ t$ P- W0 T} |
|