|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' R- f3 \4 W; Z }+ b3 n3 `/ C( P9 T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 z# n+ D, m. }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
F0 t. ]3 t: q7 @6 Rswarm.SignatureNotFoundException# K( q0 v( F) i4 W3 R2 k" H
at swarm.Selector.<init>(Selector.java:76)
- Q( j5 z+ z. V0 | at ActionGroupDemo.<init>(ActionGroupDemo.java:37), x. c7 X. K ]) [! X
at ActionGroupDemo.main(ActionGroupDemo.java:67)! k' A- Y t( b5 l4 C
* }9 i8 t, |- {% X5 A" R
& m# L. H7 n9 eimport swarm.objectbase.SwarmImpl;
; e% q0 j: ]: U& Q! Kimport swarm.objectbase.Swarm;
8 u/ s* U' {5 N4 N- m2 {# bimport swarm.activity.ScheduleImpl;$ I' [/ z H; N' Q9 _& P4 `
import swarm.activity.Activity; B( T# N2 ^5 b+ X
import swarm.activity.ActionGroupImpl;
1 H5 l0 g: R% h3 e9 vimport swarm.collections.ListImpl;+ n* T; q: J* G4 K! a! _
import swarm.defobj.Zone; 4 S" }( B+ M& q4 {- l
import swarm.Globals;* k( G) W/ u9 Q( z& S5 u& D6 j
import swarm.Selector;; d- h" n8 Y$ H
import swarm.activity.ActionGroup; 0 w5 y$ C3 k1 R8 I! j
class Agent {. P6 b J9 q% o& y M
char id;
3 g9 X/ g5 _% a1 f
, ^: C% W- ]) g6 m* l! o Agent(char id) {+ K4 [+ R w: V9 v0 l
this.id = id;9 d% |& I% ?, z' h
}- d& [; M. [, D% s# R% E7 e, q
% g' l6 Q$ e8 C* M4 C; W2 d, B7 a
public void agentStep() {
/ p- n' l* @$ i B! w System.out.println(id + ":" + Globals.env.getCurrentTime());+ `4 z; ]: E' L, b$ @, P
}# J |8 C8 X/ m+ G
}
8 J( J6 n# X5 { L; J2 _& C
( u2 p1 t3 H5 [1 h6 l4 a6 ^public class ActionGroupDemo extends SwarmImpl {% Y0 a7 I, Z, L% N1 g" q) z
ScheduleImpl schedule;$ b w2 t* i* {" d
ActionGroupImpl actionGroup;1 a: w& \+ w2 l3 Y
ListImpl list;$ e' o5 X5 W$ m9 q2 \+ A! [
char Id = 'a';. x2 O: }# r9 ~
1 u* {& Q) S9 ~$ a( k2 ~5 ?% t4 T ActionGroupDemo(Zone aZone) {# E5 c0 g; W# ^9 _- \' x. I
super(aZone);6 N2 H! {5 z. C% Y+ v
list = new ListImpl(aZone);
, q8 f j" P$ f) f0 b swarmSetp();! B _1 q! ^# f
actionGroup = new ActionGroupImpl(aZone);
5 r2 ?, p' s' ?" |( K: r- S$ w schedule = new ScheduleImpl(aZone);
4 n) t2 @9 n2 r try {- ~& z1 l/ q% A* U N) z$ g& ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 N4 |* S3 V+ V
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 z$ {+ y! Q- V) q 5 g, w' M- Z; P, O! q* T- ?
actionGroup.createActionForEach$message(list, agentSel);% t- y0 `- K3 Y. e( o0 G
actionGroup.createActionTo$message(this, swarmSel);" x* @- j3 A4 s) N
schedule.at$createAction(0, actionGroup);% `% A* {+ i; s
schedule.at$createAction(1, actionGroup);
: B! C7 H9 w- f" u N* l5 }& n schedule.at$createAction(2, actionGroup);) P3 m) o% |: V! X0 J3 t: p3 T
/ [3 T7 Z9 P% v& G: P( O } catch (Exception e) {0 Q/ a( f* Y; q
e.printStackTrace(System.err);9 W1 V% Q% d F" G8 g1 F: Z
//System.out.println(e);9 T/ X5 _- T- q6 o4 {0 Y
System.exit(1);% g! ~6 Z" }" Z& i) a
}6 f$ ]1 r- N6 i2 G+ O3 d
1 Y" ~) X" }. n
* A. V+ T% K# t. @/ o }. G3 q. R( F: }
. i6 @( ?$ a( S4 N
private void swarmSetp() {% r: a! U7 {9 n# u
list.addLast(new Agent(Id));
1 k% N- b1 T$ L; ?3 p' { Id++;
# Y e! S6 f5 R4 z% T* a }
; p: ]1 v4 @# K1 W: V' c1 {6 w7 x$ V+ u7 R6 ^, X0 s
public Activity activateIn(Swarm context) {
- f! P7 o( X# L' x6 T! z super.activateIn(context);( z3 \& T, y( w" e5 w9 l3 O% ]
schedule.activateIn(this);/ e5 s$ H' u+ s$ m& K+ V- E
return getActivity();; H- _6 ~& ]3 d( @: z
}& [5 t- g7 I& ~3 L5 q5 O! G
5 O' b# Q. E2 e& v5 \" d& u
public static void main(String[] args) {
, q3 t Z0 ]" m3 m Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ F2 q: d# f2 h$ e' B4 H
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* @" @$ M0 F: @/ j* k1 J. ^
swarms.buildObjects();
8 B: K' b S0 l1 N p swarms.buildActions();! \& z2 [7 G! S r# G0 B
swarms.activateIn(null).run();% [4 I7 X% i$ f# d# }$ p
}
$ P1 W: [6 x2 Q" F* m$ T L
! O: `: Q+ `# z! \9 Q0 M} |
|