|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 k4 O0 Y- y7 A
& v0 @9 B8 G; |4 B+ R% V4 E2 J- r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! n9 a) s" d* w% I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! H) z& S9 t3 Z" T0 Xswarm.SignatureNotFoundException$ k( k& J( a8 Y' F$ D& S' w# Z% t
at swarm.Selector.<init>(Selector.java:76)
5 g) U8 h$ x3 W9 i4 }8 M) A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ R4 u0 j1 P. d7 Z) _0 a0 \* B1 g at ActionGroupDemo.main(ActionGroupDemo.java:67)0 g! Y I* e! R7 }
/ k% w4 r- ^2 y: h+ `
2 g( b M$ B6 ~: a! O2 v( nimport swarm.objectbase.SwarmImpl;
/ a. f! [: a' M1 p9 z5 F4 g" bimport swarm.objectbase.Swarm;
- L8 i3 H* f Y* Fimport swarm.activity.ScheduleImpl;/ B" L7 N0 ~* F8 T+ J8 b) k* Y
import swarm.activity.Activity;
$ H+ t! m- w6 h( S& @import swarm.activity.ActionGroupImpl;) d- f: v2 a$ w6 ^9 ?
import swarm.collections.ListImpl;
/ y7 t0 C# b U Dimport swarm.defobj.Zone;
/ D; G! o/ Z, I9 Z# H; H% C$ qimport swarm.Globals;: n) m4 A' h" O4 ]: Q
import swarm.Selector;) Z& q; @/ [5 p- [+ Y! s5 x
import swarm.activity.ActionGroup; ) Y6 `* H; O2 [! B
class Agent {7 z: E: p* M6 m7 o
char id;; c/ _" F. | C0 A& m
+ f& O- A* E! l% h8 @" P Agent(char id) {# g* `) I" k |7 I( X) Z" z
this.id = id;
' ^3 [0 `) `4 C) ]" E3 x }- o& {7 Z/ s1 p+ S
3 d- U) \( w1 ?0 A8 X+ T
public void agentStep() {
! u+ @- l# N: v; e) s2 s4 j System.out.println(id + ":" + Globals.env.getCurrentTime());: s7 p) R' J8 n8 Z: E
}
3 a, H; k; u- V! f. ?}
% _4 o5 Z+ C: A2 o, \5 J* k
`8 D7 |2 C. \" h6 A, @, [9 {0 ~public class ActionGroupDemo extends SwarmImpl {
- v% U! Z3 T& k% I' m; `8 k ScheduleImpl schedule;; ?6 R1 K* j1 ?$ L& j
ActionGroupImpl actionGroup;
3 u2 d: c( [! q$ U1 Z1 Q6 c' [! P2 a ListImpl list;
2 q/ v, W: w0 i+ ^; D char Id = 'a';, X' U( R3 }% p# }% z D8 V" y
% ~/ {1 n, S" K2 l' @ L
ActionGroupDemo(Zone aZone) {
n; p8 F5 `( C3 c, S2 Q super(aZone);8 H7 \8 v/ @/ u, e
list = new ListImpl(aZone);( L4 s; V! w9 i5 D
swarmSetp();! o9 F0 I8 g) J7 q) C: a
actionGroup = new ActionGroupImpl(aZone);
2 x+ t9 t1 {' j, E6 ^8 t schedule = new ScheduleImpl(aZone);& T* j5 c; `) R- m Y3 @" V
try {
* }% d/ I4 w; u. L2 a; d8 J! [* W Selector agentSel = new Selector(Agent.class, "agentStep", false);
: |3 Q$ }8 N4 L6 F4 k7 { Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 i! m" s# ]6 U- H/ e
# `. S2 u! D2 s. H/ E: U# b actionGroup.createActionForEach$message(list, agentSel);* o: u' q1 }/ D5 t( P: u5 i
actionGroup.createActionTo$message(this, swarmSel);
9 T4 Y X8 T. [- y& }7 n schedule.at$createAction(0, actionGroup);9 {0 |. ?( I- ?% k) n9 A R
schedule.at$createAction(1, actionGroup);; }" h' Q: q, l) W1 P; ?+ L. [! k
schedule.at$createAction(2, actionGroup);
+ {) N! h, g" s6 M5 [- d3 v+ @: G$ V. d$ O
} catch (Exception e) {/ ` N) H/ K, |; v1 K
e.printStackTrace(System.err);
3 o" j) [. X# A //System.out.println(e);% Q% ?- E$ N1 n4 D9 K) P6 |
System.exit(1);
: o, t" L+ C: O8 j' e: s }
5 I: u5 Q, v2 x) v; v/ [, `( w" f# q W/ @
O$ T& ^8 u5 F }. Q8 X6 ~, _. n0 x3 X
2 [' o) h$ Y0 S/ z% S' p# k
private void swarmSetp() {
% ]9 @( s5 U3 L D1 ~: ]( V, i7 Z list.addLast(new Agent(Id));4 a) N1 `+ G. @, `3 ?* U- i# i
Id++;
5 E* M! n5 P: W6 R: T6 ~& y6 W# @0 h }
0 ]% U. ~" w; T# w+ m: q- M7 J6 K) L# ~# Z
public Activity activateIn(Swarm context) {$ e. W" i" e$ J7 M2 u0 J
super.activateIn(context);# e% t; e7 d: @% Z. l1 C
schedule.activateIn(this);
4 ?& f0 A5 U7 K# L. G* T8 P return getActivity();
* H/ D( }& y* X- C7 z1 s }5 I6 R% d9 ?0 T4 }
4 m, I0 Q$ |/ J9 H# M& ^ public static void main(String[] args) {( ^3 l# }$ O- T4 Y% D( Z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 _% \/ z: v/ V& `2 \
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! F! y+ X4 p* }7 Q6 v
swarms.buildObjects();. h! @$ y* Z4 c' |
swarms.buildActions();2 O( H- L" E3 r6 }. O0 ^
swarms.activateIn(null).run();
6 q. ?7 W- E9 T }/ y% z9 h6 K" \5 G6 r. x$ o
8 _0 o9 w! f0 ?0 ]( C* M: r7 E
} |
|