|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' U: A# t* ~ E4 l" v# x1 s
+ f: o, t6 Z& \5 A5 \0 }5 | ^, D
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 Y4 T7 b' u% r M( Y* Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. m4 t y/ C% ?+ h9 \
swarm.SignatureNotFoundException& k/ y) a) Y6 R
at swarm.Selector.<init>(Selector.java:76)
5 t# J/ R7 a0 |. ?7 f0 w6 C at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# u& w, c, I t6 R$ A! F) R at ActionGroupDemo.main(ActionGroupDemo.java:67)8 a l4 E' w* p& k* j
3 ^0 q& S1 a4 w
$ Z& k4 B4 s; oimport swarm.objectbase.SwarmImpl;$ w0 T" j0 A' k* j
import swarm.objectbase.Swarm;; |% m- V q+ ~/ t1 _
import swarm.activity.ScheduleImpl;0 R H# i5 a1 v0 `# q7 y
import swarm.activity.Activity;8 @3 L/ z3 y- C- Y. \5 t0 m" P8 K
import swarm.activity.ActionGroupImpl;
: d* e' I, p6 I5 Cimport swarm.collections.ListImpl;+ Y4 p* K1 q' r1 z- i
import swarm.defobj.Zone;
: v8 i0 G6 Y/ b2 J- Gimport swarm.Globals;( P- K4 Q; T$ b# _6 @5 }
import swarm.Selector;
3 S) T+ p6 e8 Eimport swarm.activity.ActionGroup; 7 _. q: t6 t, g0 e# j5 l# J; G
class Agent {
- q2 f* S6 ~7 s) V/ m: ^ char id;' T; h7 T* X& g& {
, R" m( {( v% a6 D! t5 t0 O
Agent(char id) {& m: [4 s* K5 l4 [' s" W" K
this.id = id;
P# G$ a% i# Z q$ p2 ]5 S }
( a w7 i& m D, h
& Q6 G3 [, ?: I: A- J3 j& u* i. n public void agentStep() {
6 J; _; i7 J2 e+ g3 a System.out.println(id + ":" + Globals.env.getCurrentTime());2 _& B+ M5 j) r% S' M- C
}$ @' [; i0 n# x( z
} d' o. }9 m# S! t
4 G2 u$ P* `* e. Y. ypublic class ActionGroupDemo extends SwarmImpl {9 q8 G8 `' }- W3 s2 ^
ScheduleImpl schedule;! w2 _/ I" C7 T& ?
ActionGroupImpl actionGroup;
6 i( E' E+ e* ^7 m9 y' [ ListImpl list;
# K1 f- J- M1 Y char Id = 'a';
2 O& ]9 n2 V ~0 \2 ^% v5 C- `( k5 p' \' O
ActionGroupDemo(Zone aZone) {
# u: I- \% `+ b! w$ G super(aZone);
! I9 m# P& q1 S/ b+ c, j' D list = new ListImpl(aZone);
; f# s( I$ W( G swarmSetp();+ N) ~2 z7 B: D5 }& p* e- G- M
actionGroup = new ActionGroupImpl(aZone);+ [0 Q% O$ X6 X; a0 Q5 _2 c0 K
schedule = new ScheduleImpl(aZone);
- a% v. I+ b! z- U- I8 w try {
2 R8 T6 V; T. s; S6 Q# q/ D& L d Selector agentSel = new Selector(Agent.class, "agentStep", false);: w' m0 u5 l: |' P# q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! d4 E' n( f- N3 Y3 o
# o$ a% D5 ~# _% x9 u% N8 a
actionGroup.createActionForEach$message(list, agentSel);; h5 X& X, A: Z+ S7 c
actionGroup.createActionTo$message(this, swarmSel);
% a3 I0 H& ^- f schedule.at$createAction(0, actionGroup);3 O2 q: h' l9 r) |% b' {$ R- ?
schedule.at$createAction(1, actionGroup);
7 d( |& E4 u8 r8 F5 }2 P7 o* Y schedule.at$createAction(2, actionGroup);: a) V7 W, v8 m @1 z
1 n6 y) P/ h* E9 \8 D$ c) w" } } catch (Exception e) {
3 X! x+ ]$ v+ W e.printStackTrace(System.err);
% N- F9 X' m- b$ Y' X8 O //System.out.println(e);
1 K; _( `3 j$ Q$ j, F4 e System.exit(1);
5 z1 D* K* G( a) V: |) P }
$ [# x7 N3 u+ n. T& O3 f5 }/ }
( z7 H0 \: o: Z2 ]7 `$ Z* r4 ^+ N6 F- x3 h* _: R
}
, e3 w$ V! E, r' m: s n" `- O- J, R! A3 m9 y* P6 |
private void swarmSetp() {7 h8 C, ~. r0 R! g6 M
list.addLast(new Agent(Id));
' S5 e/ Q" _6 C7 \3 O0 w0 r Id++;
8 J/ v/ f `- o( H }. k2 M6 T; z# {% V3 D1 x5 g
* b0 }+ Q# p: V$ V8 v5 X
public Activity activateIn(Swarm context) {
, M- G4 t, U3 U2 z. Y6 l super.activateIn(context);
1 ?& J9 T7 }: J) R9 M, ~0 A" L schedule.activateIn(this);$ M0 y T9 |1 v# d' ^! l
return getActivity();
% f s5 F+ D5 y9 g9 v }0 w" l( h" v0 v: r* h
2 T( [* E% m: ^8 t
public static void main(String[] args) {
8 P) ?9 I7 y) E& m- g. h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 ^/ N X% {) K! O3 G Y. p; X' r Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" B% b; H* j4 A. \: [6 X
swarms.buildObjects();; f5 s4 O& Z" A5 [2 }& M c
swarms.buildActions();+ Z! T% L S* v' W) k
swarms.activateIn(null).run();
, U# _6 }& \; u+ h( l- ]# w* q }8 W6 D W3 b; j
. K% j4 \* j5 W0 i
} |
|