|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 f: a# W8 V* e) D- l: l2 W( n, G0 T- @5 m* n: P0 V& U3 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 p) b( m3 _" S9 g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' O0 b! i \0 Z- r0 dswarm.SignatureNotFoundException% r, m" W. _2 D0 z8 ^9 [
at swarm.Selector.<init>(Selector.java:76)
$ ~9 C& |3 a" A! k$ b at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- {* o% F t( w/ V- o5 P% d. ^6 w7 M
at ActionGroupDemo.main(ActionGroupDemo.java:67)# R8 I/ T" o' I
$ x: o, |+ S9 ~% s7 Z$ p+ b) S
) I' s% B2 A; V. Z9 q' Q/ Qimport swarm.objectbase.SwarmImpl;
! B; S0 U; t0 qimport swarm.objectbase.Swarm;% {( W: t% G2 O( Z C' p
import swarm.activity.ScheduleImpl;
+ a9 }/ H. y: ?) b+ i; zimport swarm.activity.Activity;
1 z0 [; g2 i5 Z3 ^import swarm.activity.ActionGroupImpl;
0 _# ~' }3 |& U. r$ Y) Uimport swarm.collections.ListImpl;
, i$ o- g) U4 p* s" v6 uimport swarm.defobj.Zone;
! @7 j$ [9 a0 Z$ mimport swarm.Globals;
+ v; Q/ H- j# J, `/ a' vimport swarm.Selector;
' l; S: x& P" u6 gimport swarm.activity.ActionGroup; 9 _5 |+ g3 @# F, p
class Agent {
1 q) Y5 `$ f$ C) u$ A- G1 h char id; {: T1 R* r0 W# v/ R. E
! B" y% \2 c: J* ^1 O. A* |! \
Agent(char id) {
; z, q& H( f/ g2 | this.id = id;; b" M3 }0 ?) p% u: w
}0 `4 Z( D9 D+ L* p$ U7 t. z
c& j# l- O/ x) k. Z' s5 N
public void agentStep() {+ X3 b5 A5 s' s! N/ \
System.out.println(id + ":" + Globals.env.getCurrentTime());5 c3 u# J# W9 S. a5 I; T
}
$ ]5 ~' v! s+ D; Q}
; H" g( o& ]7 p. p; r* \1 v% ~- ^
5 j( `' n' C1 g1 dpublic class ActionGroupDemo extends SwarmImpl {
. t2 {8 c5 o2 S6 D r ScheduleImpl schedule;
$ j. Z3 C7 c2 r) H2 R$ | ActionGroupImpl actionGroup;# z7 j7 m3 t: G" Y
ListImpl list;+ W; H5 u1 p# U4 |) U+ w
char Id = 'a';
) ^7 C/ N! s# m* \1 F
. {# t0 l. w/ K. t% A: e" C# d ActionGroupDemo(Zone aZone) {
8 `5 |% z* F( C! W; Q1 i* r super(aZone);
* F( O5 y- u( r* f0 T9 K* q list = new ListImpl(aZone);' H% }1 j$ o. T% c! V; [
swarmSetp();$ h: C% _% Y7 q3 w0 O7 q
actionGroup = new ActionGroupImpl(aZone);) e1 }$ o9 s$ P) b/ s# s
schedule = new ScheduleImpl(aZone);
8 U. F! L. W7 f! v) p2 d1 ]1 b5 H try {
7 ~0 G! o! d6 c Selector agentSel = new Selector(Agent.class, "agentStep", false);3 P" i; O' x, L8 Q) o
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& ?& o6 F) q6 ?# W$ ` b% F- J$ r/ Y- ?* u, j
actionGroup.createActionForEach$message(list, agentSel);
8 `0 C* Q j* P+ I+ T$ o% @" A& x actionGroup.createActionTo$message(this, swarmSel);- ~, G8 h: V. H
schedule.at$createAction(0, actionGroup);
) A2 {- h, b, F) t5 Z schedule.at$createAction(1, actionGroup);
2 l8 A; A# l' E3 x7 Y8 g- q9 X. g3 { schedule.at$createAction(2, actionGroup);
, s" J/ I, _+ g+ J0 d2 H9 K: o3 l2 Q. j* e
} catch (Exception e) {9 Z; q# d% _5 ]/ C# N
e.printStackTrace(System.err);
2 Z3 g2 I; [4 a6 B4 x //System.out.println(e);& u. f6 v/ d& s
System.exit(1);% G: ?" c! m- P. d9 p: w! o$ g
}3 U( e5 H- V; L
. B7 H1 K$ d7 e: L: k$ q% \# M
@5 A- ^2 T% {8 f
}
% U" }2 z# x8 T
/ n3 M1 _- n% V% u% Q/ x! u private void swarmSetp() {: b) O. N6 U2 Y* \/ u' B3 G Y% h! c
list.addLast(new Agent(Id));
4 `3 ], b& ]& l: n2 q& A Id++;. t5 c" v6 q1 D# N1 V5 v) p8 e% Q
}
/ W* Q$ p) O: z# Z8 P8 F
8 H" P2 _9 S# k) h. c* j" z. r public Activity activateIn(Swarm context) {, t& Y/ D+ R9 Z% `3 k5 `) A
super.activateIn(context);* v2 n$ [8 t. |+ n# R# l
schedule.activateIn(this);6 B+ r/ X0 G7 g" R6 m, L8 h
return getActivity(); m' R) k; h6 w7 Y2 _- b, T# o% N
}
) a( @1 }8 [! N2 A2 O9 R: z/ z( {$ a* n$ g# m3 }' X, \# i
public static void main(String[] args) {
& k5 W' M: r: S5 n& }8 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ E# \1 u) V4 T7 w6 E+ P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 C! k; a& |, e, k0 D swarms.buildObjects();
4 B. `- q J! R/ y" V" `' e swarms.buildActions();- ]5 \! {% K% I& }2 n2 ^
swarms.activateIn(null).run();& r' n4 P# T* y: y. m" }
}) U( d n5 w: x3 L/ p' T Z [
1 U6 ^ h1 Y1 D* s. Y} |
|