|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # U, Z2 N/ F! ]7 D& G5 M5 |* k
x" F; B9 G8 [/ B: \1 w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, z5 b" x' e6 T$ ^+ W `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 g, I: R+ U" s
swarm.SignatureNotFoundException( X# C: ^* F7 L) E) H
at swarm.Selector.<init>(Selector.java:76)/ t8 w6 D# |9 i7 a6 A! k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& p0 h: ]: t7 x. c% n at ActionGroupDemo.main(ActionGroupDemo.java:67)
, e1 D# |0 \( J4 S3 r5 o
& S# x% u; P# t% M7 Q+ p4 k7 \& B7 w, r. Y
import swarm.objectbase.SwarmImpl;* J/ d1 k- b' ~* D% Y/ H) h- ^
import swarm.objectbase.Swarm;
; Q( J b6 ]& y8 C4 y* Qimport swarm.activity.ScheduleImpl;! [( v& e& p% V2 j
import swarm.activity.Activity;
# D2 N R# Z: o: ~' R% m1 O nimport swarm.activity.ActionGroupImpl;; c7 l( u7 F- N& ^9 N' H! P" @4 r
import swarm.collections.ListImpl;
- X3 e" J: y/ t4 X. yimport swarm.defobj.Zone;
+ k1 |3 r ^) z9 d# s& Rimport swarm.Globals;$ A. p2 W4 r1 B* S* Y. G6 y
import swarm.Selector;
9 k, u. a; d9 U% `: k& u/ q& }import swarm.activity.ActionGroup;
- @5 Z( H* b: G4 D3 q- lclass Agent {
+ g7 r% K/ |3 H9 n. f: j/ V7 i char id;
7 O6 v0 z; ]; }' l: f6 k% E9 Y1 T/ \8 ~5 Y
Agent(char id) {% Q6 \3 n( G% \" D
this.id = id;. d% }( X2 k$ d; l
}. I# Q6 M$ H, E' @3 d3 j
?' Z& A4 J1 X0 K% S
public void agentStep() {
/ {# U6 ?( ^+ n. o System.out.println(id + ":" + Globals.env.getCurrentTime());! L. ^, z7 D% _+ h$ v" B, A }
}- H; e3 a: Y& I. @7 `
}
& a3 k' C+ Z% x' t0 _- q1 I
0 i( e1 h& g% Y- T- [) \; S/ ypublic class ActionGroupDemo extends SwarmImpl {1 W$ `! I9 t8 p+ b
ScheduleImpl schedule;
2 f s7 \4 X* B' @, \: T0 d; O { ActionGroupImpl actionGroup;
* |& m* p- R V! {4 w ListImpl list;
+ c% s' e4 B9 m$ x2 z7 W char Id = 'a';, X: g2 X- B" c1 c
% Z8 Y w/ e: C) o% x! g
ActionGroupDemo(Zone aZone) {. q; j2 C$ \# m. i' [
super(aZone);
' V/ n! B" g5 U; o2 c% b list = new ListImpl(aZone);
, `& u5 }3 L- y6 P1 _( R swarmSetp();, }0 ^' Z% ~6 @* t. O- l
actionGroup = new ActionGroupImpl(aZone);
0 n4 e/ Z9 a8 B: l6 L schedule = new ScheduleImpl(aZone);
2 _! L# i i7 u; j% b% h# D try {$ r' M9 R/ L/ P! p2 `8 u
Selector agentSel = new Selector(Agent.class, "agentStep", false);! g' c( r# P+ {; H/ t: a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* e( ], T: B6 }& D4 c% N 0 V7 k- z6 H3 F$ z
actionGroup.createActionForEach$message(list, agentSel);
+ B/ S' {( K% T: d actionGroup.createActionTo$message(this, swarmSel);
0 e- k. N* D8 } schedule.at$createAction(0, actionGroup);
6 `: c2 V" u" ?7 V5 K, N( h schedule.at$createAction(1, actionGroup);
( V' _: M4 X3 E& I schedule.at$createAction(2, actionGroup);
3 H+ M$ b% z1 A
0 `$ L$ _! l: j } catch (Exception e) {
" X% P, k6 Q, H" _ e.printStackTrace(System.err);
$ V: n t- h8 r! ^$ X0 a //System.out.println(e);
) h+ ~, n& R- ?5 N) P+ Q System.exit(1);
2 s$ x+ `" z8 A* {% S }
$ A# ]- z; ~& U; ` ~( ^
- U( u+ g7 P" M
& T' S* s% _! Q$ |# }3 Z* b }
; ]" B; C5 p" R# V4 G+ e; ?
# {% ] k5 v( o* {5 c; e% w private void swarmSetp() {1 W4 v9 L$ s3 f7 e
list.addLast(new Agent(Id));
( U/ c1 V6 K, c# T, V2 b Id++;/ \- K6 j( A! h4 \
}# m7 B, F, Q: S0 [+ A* U0 S
! A: z* e& U! r! K7 q3 I- j public Activity activateIn(Swarm context) {
/ p! R0 F0 F! G! F' e super.activateIn(context);
* o* Y) G# R8 _4 S; F3 d1 {; u schedule.activateIn(this);3 J# ~3 T2 D1 w) ~5 D# W# [" y
return getActivity();: n X$ a: z( \2 j1 r
}1 d' O- {# I2 @& w* ^% q6 c
; l d6 n7 P( q$ {* x' x' [ public static void main(String[] args) { F, o; K0 K5 c; Y. j* c6 q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 u! \, t' o8 E# G" B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' ~, H6 L$ y( H* z+ G; Q
swarms.buildObjects();
( e4 Y7 l$ z w/ U swarms.buildActions();+ B: V, o8 P- B$ Z# s
swarms.activateIn(null).run();
! R( [" L* V% q! ~5 M# j7 T }# J) q. B. }, f1 q0 S% B+ f
$ T, b+ J6 Z) ^7 D3 I& @} |
|