|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 p+ s3 L: h6 ^% P' z% f
0 B$ \" O4 c. L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 ]7 X/ @3 z) F9 x# v% n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) P! G1 p0 M/ `swarm.SignatureNotFoundException
0 I! T" Z) ^# ^. I1 \% d. {. K A at swarm.Selector.<init>(Selector.java:76)9 z8 d5 s: C# \$ a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" Y$ h. @" ^. L! ~* W; _
at ActionGroupDemo.main(ActionGroupDemo.java:67)
p/ c: n, G" j. `" t! X0 k& C2 {. M1 R: b/ p; C$ E. |; k
$ l, V/ @9 S8 G- f) _4 g0 o0 {
import swarm.objectbase.SwarmImpl;
; k3 F6 H% n/ @" ^' P) jimport swarm.objectbase.Swarm;
6 \# [% K- I' \ n" @! A& Aimport swarm.activity.ScheduleImpl;3 d5 i9 A0 n5 X a% V* |4 @7 a
import swarm.activity.Activity;
0 N8 h) J, K( z* z% w6 U7 rimport swarm.activity.ActionGroupImpl;
2 F2 S1 c) [- uimport swarm.collections.ListImpl;% M! D: ~+ ]% W% O
import swarm.defobj.Zone;
% F2 t/ E) ~/ U0 `1 F1 C6 \import swarm.Globals;
8 u6 Q$ {. Y# Wimport swarm.Selector;
" v2 l. Y- e; Fimport swarm.activity.ActionGroup;
' S: ~1 t; s7 u7 D u5 Q3 q9 tclass Agent {
* h4 o' l3 u2 Q$ { char id;% [6 E7 h1 c3 f( r! I% V
% ]% ^" ?, g w2 t
Agent(char id) {1 |* J# L6 L$ _' m
this.id = id;
5 v, M8 y* s7 ^. i( c& c }8 D% }2 [- u2 C! q0 V5 U9 u
& O5 R2 l; \! G W5 s
public void agentStep() {. J4 A1 g; f# w O" s
System.out.println(id + ":" + Globals.env.getCurrentTime());2 n( x% p4 ~) M# I. a g6 V* p
}+ D. ?) \! z. H f
}( u, D/ N& j/ Y- ~! T- J
) ~1 d7 i/ D. k
public class ActionGroupDemo extends SwarmImpl { @% y9 ^# ~" x
ScheduleImpl schedule;1 Z4 O, @' R( c! k7 G3 R; Y: S
ActionGroupImpl actionGroup;
" g' N- {4 Q, }* s1 Y ListImpl list;
) @+ V0 Q3 B2 B( t char Id = 'a';
; o9 X) D. S! e/ t- u
+ Y0 b6 I& _& A1 Q& v ActionGroupDemo(Zone aZone) {! Y! Y x# V% g5 M% O9 d! I
super(aZone);' c; y$ N4 J6 q
list = new ListImpl(aZone);
9 c( s' z" L, B8 R* i3 F swarmSetp();
3 I% s; {: f# T8 }' ]& d2 j actionGroup = new ActionGroupImpl(aZone);
7 j8 M) \ C4 `; E3 V schedule = new ScheduleImpl(aZone);
) g4 e; E$ j S: b$ C try {
2 ^) F2 D3 j( Y& Z Selector agentSel = new Selector(Agent.class, "agentStep", false);; B" ^3 l, J, |, L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# X# @/ x# r) z" Q8 t) Q) R
/ A s Y" k( o2 y: Z" D( a' }0 u actionGroup.createActionForEach$message(list, agentSel);/ Y$ a& A4 h0 ^0 o: M- z
actionGroup.createActionTo$message(this, swarmSel);
0 s) [8 i: e' X0 \( Y5 Y( ~ schedule.at$createAction(0, actionGroup);' n, L+ k* p$ T' W
schedule.at$createAction(1, actionGroup);
- c% y1 B% p0 u5 D( M! D! s: [ schedule.at$createAction(2, actionGroup);
0 U* A' z% I5 O1 |
8 D0 S5 \9 A6 Q4 n2 r. A6 C } catch (Exception e) {
6 T7 q! I' `8 b6 M* } e.printStackTrace(System.err);
' p. e& m4 A* _; k Z' ^$ C //System.out.println(e);: O) I. e: U" X' f
System.exit(1);4 U, \3 _. e u- a7 h) `1 Z
} j5 F+ X' Y% o2 I! H. P
$ U i7 u1 G0 C5 x' E. D$ _4 ` l1 v. m
}
j5 s* g6 j6 [6 o8 J; u( x
: c7 t4 F: X) n# o7 p private void swarmSetp() {
1 c* ^' n) |' x& j4 F list.addLast(new Agent(Id));/ r/ U2 t. E$ @! I
Id++;
9 m. A& w' T/ M4 f4 e. B" y! ? }
9 O6 i) I5 a7 h S* }) S- v
8 B" D) z1 q6 E) x/ @/ H public Activity activateIn(Swarm context) {) q, b' ?7 j" G- \; i/ W" k
super.activateIn(context);
1 L/ a: F% D" d! ~+ Z schedule.activateIn(this);
0 s9 `9 v) l; d* T5 V. m# s; k* F return getActivity();- q, ~+ M) F3 @# p' K# g) i' a
}
) g% \) l. F+ a- B; c8 L, a+ B6 B% w8 g6 U! R/ X n+ r
public static void main(String[] args) {% I! [0 `$ O( K& _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 Q& a5 D* q- o- l5 {+ u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- d! I' m# B0 e, Z: C4 u
swarms.buildObjects();# P+ ~3 ]" g, o+ d) v3 y
swarms.buildActions();
+ Y C, U1 V* @/ J6 O swarms.activateIn(null).run();$ Y" |: s# m/ t. s" {
}
; A4 J: ]; z, n- o. D
; r* x. e; P6 t4 g5 F} |
|