|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ q# j3 ?/ `5 q2 c: U- j2 a7 S2 Z( o0 C; |2 V/ U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ e( p. x% v3 M: y+ n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 m7 g. w8 W1 w* {
swarm.SignatureNotFoundException
" O: y1 i5 {: Q t at swarm.Selector.<init>(Selector.java:76)$ e, r2 D7 W4 R/ g
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 M9 G: O: K$ Q& S8 X at ActionGroupDemo.main(ActionGroupDemo.java:67)# W9 @+ I8 w. O
" l/ i* U7 P7 A7 u4 w' M/ `
+ s! ^0 y7 Q$ u9 z3 g) |import swarm.objectbase.SwarmImpl;. m4 d, c, x% U, `/ Y, o9 _
import swarm.objectbase.Swarm;8 _7 t0 e" ^: Q7 m9 O" O
import swarm.activity.ScheduleImpl;% ~. g% |- Q, n B* c
import swarm.activity.Activity;
- q9 k: R$ Z' \, T2 w5 @9 {import swarm.activity.ActionGroupImpl;
N q' `' N/ X/ F4 Qimport swarm.collections.ListImpl;
& @# P: V$ R8 x# i: simport swarm.defobj.Zone; 7 q2 W( }' K. Q) `/ y e8 a$ y
import swarm.Globals;
7 B' G& @5 X. w/ J. ?; p) \import swarm.Selector;
8 t0 v5 @8 x; \; B+ q5 |3 ]# dimport swarm.activity.ActionGroup;
1 k4 S ^6 i7 ? g6 X* \6 b! jclass Agent {8 `& E2 l$ t) r1 K0 Y7 a
char id;
0 m* ? g1 L( I8 W$ @% L2 X+ X$ I2 B5 D7 Q5 _
Agent(char id) {
" y5 U& X$ L S" j4 j) E' U this.id = id;
, @: Y$ g8 j* ~$ E/ g* K }
& V* ^: x2 M: F2 \ u
+ ^- M" }- L4 G, I- D# Q public void agentStep() {* `/ N6 I; ~0 Z" P
System.out.println(id + ":" + Globals.env.getCurrentTime());
( U! j* s6 n5 D! o) ? }/ H. u! ^. t- l% I- r, C# F$ @( w
}
1 s9 J+ w' z! B! f' Q# ~4 o7 K# u1 W4 t; }- O
public class ActionGroupDemo extends SwarmImpl {% S9 b/ T- j4 ~% A
ScheduleImpl schedule;
( h- @% q( N | ActionGroupImpl actionGroup;
0 x; p/ ^" y9 g9 A" M ListImpl list;4 X2 I! }$ z" O3 e6 M
char Id = 'a';
- i* i! z5 I8 }8 V5 i J: ^; R) N" e0 G3 u9 N" v3 K" G
ActionGroupDemo(Zone aZone) {
7 e6 }2 |; z( D& x super(aZone);; L0 v2 M3 X# ]- d, N/ W
list = new ListImpl(aZone);2 a+ W8 d; K8 X8 v8 G+ G! e0 A
swarmSetp();
T, ?$ o; d7 X5 z8 H2 H" Q actionGroup = new ActionGroupImpl(aZone);! X; [& x. u3 o- c% o% Z
schedule = new ScheduleImpl(aZone);$ Y* u3 n9 }) S
try {
3 ]1 J# Q' y; M; |& F) T8 | Selector agentSel = new Selector(Agent.class, "agentStep", false);1 E* U# a/ B6 a" h
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 ?9 o: E) M: Y+ ~
6 N1 P- e/ X" t6 q% ^- z2 J/ X actionGroup.createActionForEach$message(list, agentSel);. ~/ {1 y/ l+ U5 L/ `& D8 B
actionGroup.createActionTo$message(this, swarmSel);
6 ^; r! o: o$ m2 n! _' c8 W schedule.at$createAction(0, actionGroup);
% d$ a" E9 W+ d- _ schedule.at$createAction(1, actionGroup);* f( {3 K, \& L
schedule.at$createAction(2, actionGroup);
3 }5 E, a; \* P7 W$ h( ?2 ~5 e0 D$ @' m' R1 W2 ~
} catch (Exception e) {
# \% m/ q/ ]6 m2 a6 P e.printStackTrace(System.err);* H' a! a4 u" b! ]
//System.out.println(e);& j' S+ P' U5 S1 U1 W& n% Q
System.exit(1);
. f/ J* v; ~0 M1 N4 \: `3 G }1 n+ M! H6 A) r3 A
b. D$ p i; x! k* R
Y) n6 X, d) J. { }! d% H+ W7 z1 ~" O2 q
) C/ B! [6 y }4 } private void swarmSetp() {
( m/ \% f9 T, v+ x list.addLast(new Agent(Id));* H; w% t* u2 L" e: \- y" l; B
Id++;
) f" p- W1 z+ Z# \0 | }/ p" l" N0 m. S
. a' w& V' F) M+ v public Activity activateIn(Swarm context) {
7 {5 D( {; n7 E super.activateIn(context);
3 I* Q/ `- v' G! T4 @ schedule.activateIn(this);
9 {+ E. _/ o0 C' R% v7 o0 a return getActivity();
, Z/ l" O4 u3 [) Q; v }
/ B/ r# H! _5 C, V" E% U8 G; g h6 c% y
public static void main(String[] args) {
4 H: h8 E, s3 r7 h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( c% }% Y5 q( l& b
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 V! W) O& P8 t; T7 p3 M swarms.buildObjects();7 C7 x* c/ G: B* X" P0 G; A* ]
swarms.buildActions();
( g+ W$ z# F6 q g, j3 q* x swarms.activateIn(null).run();
+ Z% ?, H' f. G# K# Y& a }. {3 o! G8 a4 y$ c4 O) ] N' d
: p3 y( ~9 `% n# W4 Q; X2 v
} |
|