|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 K' ], J$ D! h7 D) F
2 ]0 [ b5 U( v$ f Z! L; j- u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( S& q4 _7 `. w" n3 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# {7 _; Q- j* i$ l
swarm.SignatureNotFoundException
* Z4 A8 \7 Y9 m: L& s; A# g, n2 |+ B3 b at swarm.Selector.<init>(Selector.java:76)9 O! l0 |, H) O# P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: l% Q* w: R/ x8 a at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 i6 K1 u; P) D1 U G5 i# [, \6 p" G3 f8 h0 ]
; Q8 r, G' r# s: J
import swarm.objectbase.SwarmImpl;
$ H; L/ E1 D% m* _8 W! `8 A: Gimport swarm.objectbase.Swarm;
# h7 z& f2 L: W( b/ n! Bimport swarm.activity.ScheduleImpl;8 N: g) o2 D' f1 S6 y* k7 X
import swarm.activity.Activity;
* h* f& z. O" P3 C3 Zimport swarm.activity.ActionGroupImpl;
, N9 d2 D9 O$ e/ }, f$ Himport swarm.collections.ListImpl;" e9 M+ L7 x7 r9 c9 b- n1 f8 g
import swarm.defobj.Zone; * X! Z( d4 H0 l; B
import swarm.Globals;
5 ~9 s% I' K5 `import swarm.Selector;
! b! e& @0 z9 K0 bimport swarm.activity.ActionGroup; & t& c s7 f% X" v
class Agent {& x& b0 X: m. b( ~6 A# O6 b( U/ G
char id;
" K0 s6 \0 P1 u# |4 P0 L' W2 s/ |* o5 y( ?
Agent(char id) {1 l$ o' t: u7 y
this.id = id;7 H* A: y8 S7 A( _
}
4 Y, Y! S8 C3 ~: b, o: t1 ?7 ?" I; _% b7 p+ i7 H/ C2 b
public void agentStep() {
]7 d3 C$ V: K7 o: q# j8 D System.out.println(id + ":" + Globals.env.getCurrentTime());
- d# z% `, z" W Y" b; q/ B- \ }
* L/ d0 f4 L2 ~# c; p$ `5 p5 S}: R/ h0 i5 H/ _
* i* t* U1 c& k* z7 Lpublic class ActionGroupDemo extends SwarmImpl { d+ o: D# R& H' {% t0 v
ScheduleImpl schedule;
0 K' r. [0 T/ J2 \3 U ActionGroupImpl actionGroup;
0 d: }" @. A, L1 I. a$ V8 A ListImpl list;) c$ W1 z( u. E
char Id = 'a';
( k* e- p& d9 P8 c* n6 `3 E- |; d9 L( i& N; p; a
ActionGroupDemo(Zone aZone) {
/ O% i& u9 }, [/ L0 P, \# K/ q super(aZone);+ P3 C W5 Q+ L- f# \! v# F
list = new ListImpl(aZone);; V! r7 N) m4 j7 C9 W" P+ E
swarmSetp();' Y$ H" r; G# y9 w* j4 E; X
actionGroup = new ActionGroupImpl(aZone);
9 C$ M/ {' X8 s. o- m. T" k schedule = new ScheduleImpl(aZone); v* ^3 m. a% y# G; g
try {1 _, Q& W$ \9 o4 t& [. l% S
Selector agentSel = new Selector(Agent.class, "agentStep", false);, ~) v* X+ f! l% e1 ]6 r" w
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ u, q0 G2 x% N8 u 6 A9 |! n' W' F+ p, z. o& d* p6 U* g
actionGroup.createActionForEach$message(list, agentSel);
7 O) g8 C: Q. g/ S. r9 E3 o actionGroup.createActionTo$message(this, swarmSel);' G6 x, h1 o" P7 @! d; N5 h) A% X
schedule.at$createAction(0, actionGroup);
4 j q5 j7 F7 b' D% v8 W0 G schedule.at$createAction(1, actionGroup);
. _$ h- { O4 z2 ^3 h+ V. h schedule.at$createAction(2, actionGroup);
% _. m4 a# A: v+ b
) w7 J% ~% D6 H } catch (Exception e) {: N. M% N p2 @3 U
e.printStackTrace(System.err);* M) h, o% U, }- x M; {3 w
//System.out.println(e);
/ S. z f( D2 J, `) ]4 Y System.exit(1);
, l3 w$ \% H; [6 S% V3 z% u }. l( v% F# l) i# y! {1 _8 U
8 a/ r4 V* X m6 C9 F1 {" u# K4 M$ t, J" v9 p6 \ ?6 A2 q
} y' V) G0 y/ T9 c5 w8 r
$ K! o; e1 P7 L/ E) I+ O3 L
private void swarmSetp() {8 B2 z- F7 M( p& @3 y' ?, S
list.addLast(new Agent(Id));
% t) c. ?9 A4 D1 R5 F Id++;
& ^2 t4 T) M" X: \5 @+ E }
; p; z- B- }' I- Y
6 _1 d9 W& n2 d5 w. I public Activity activateIn(Swarm context) {4 @& @8 l6 v0 ? B5 N4 a. S, g! A
super.activateIn(context);! ^) O% [9 J2 A$ w2 I% l
schedule.activateIn(this);$ \1 ^, @8 J/ w2 i
return getActivity();; `5 ~! k: n7 Z, c: F
}
, Q" C* Q7 W/ s% z2 a+ r# _$ E' M& y
public static void main(String[] args) {
# R- n' K9 ^/ l% h& x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ f7 ^) M- B; h$ Y$ k0 {) ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ f* K2 _/ g' e2 u swarms.buildObjects();
& r+ T# P( `. h, }0 b T swarms.buildActions();% {' z' W V+ N3 X/ y
swarms.activateIn(null).run();
0 \$ `$ b. J6 m }! X; F; m9 m0 O6 f. S# [. |
/ v: A: x0 x7 e, O. N} |
|