|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' ]: F |. K& ]: [
4 V6 P0 w7 c/ `: Z, H0 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! l6 p* E2 G- f4 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' I* Y- B5 h1 O3 M9 W
swarm.SignatureNotFoundException' _% ? v( z4 z9 ?* [" l# J! s
at swarm.Selector.<init>(Selector.java:76)6 d9 ]1 Z* j3 K: v2 ^6 g
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ E/ @ K# v |5 i2 t* y at ActionGroupDemo.main(ActionGroupDemo.java:67)) k+ J4 T# M& [- [* h1 [9 d4 h( m
2 W4 W% C% k3 K( j! H
9 a- v) c5 s8 M$ i" Iimport swarm.objectbase.SwarmImpl;
; X9 T. R9 P: m' H1 V( V' Fimport swarm.objectbase.Swarm;! ^( r0 d% V$ l
import swarm.activity.ScheduleImpl;
2 I) I& }4 S1 K" r, j- _% |import swarm.activity.Activity;
. h u- Y- _3 I" E+ Cimport swarm.activity.ActionGroupImpl;
3 |' c3 ^7 O$ n8 aimport swarm.collections.ListImpl;& Y9 V7 ^5 R0 _5 ?# o' f$ a
import swarm.defobj.Zone; * {# n7 s* A$ o+ p9 q
import swarm.Globals;
9 c- b. r) y) p+ ?5 w4 fimport swarm.Selector;
: d1 b* H( M4 n4 v# z* k) Dimport swarm.activity.ActionGroup;
$ n* M6 z, M' u b$ ?class Agent {
+ B4 @2 x; _, A8 x char id;0 ?0 K& k* I4 t) `
5 j3 D# ]3 ]1 q/ d8 m
Agent(char id) {
* x- ^$ {3 s; W) q' Y6 W. Q! N this.id = id;
4 v" h: V0 C. I8 Y }
. U" ]) M; h, R7 n. |8 I$ _7 s* j# V0 J/ i [
public void agentStep() {6 r; ?; s1 Z7 l. ]. U h: Q
System.out.println(id + ":" + Globals.env.getCurrentTime());8 X, e6 d# T6 N: ` a" I2 z
}
+ o9 y9 ~+ h+ a% [; Y1 C}' p( c5 [# q! `) H( z3 S; ^0 y
( @9 t x. _, r, K+ h0 k
public class ActionGroupDemo extends SwarmImpl {
# n, D& ?4 S! V7 Y( k ScheduleImpl schedule;
& {8 E; m+ G6 d# n& s, a ActionGroupImpl actionGroup;2 S+ z) M8 j. b2 q6 y- A% e
ListImpl list;$ Y4 I: y! |8 z/ ~# ^0 Q
char Id = 'a';
4 D- l- W, Q4 F0 _1 X
" o8 ]& R' n/ q! d3 f9 d4 |% |( M ActionGroupDemo(Zone aZone) {4 b; ]6 V# e' a, x1 w: n& u t1 f! A
super(aZone);6 C+ i! n3 k. q* G
list = new ListImpl(aZone);
9 h9 p& m* z* B$ X+ S$ Y! E1 g; N* r swarmSetp();
) P. |1 Q1 Z" c' x9 p4 K8 c" V: {; S actionGroup = new ActionGroupImpl(aZone);
2 e5 o; m0 V- A( r: b: } schedule = new ScheduleImpl(aZone);# D: |6 l* p# o# f& j
try {
" m4 z* h* H# t& @) U3 v Selector agentSel = new Selector(Agent.class, "agentStep", false);, k A' }1 o- J; Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 X5 a' N: _9 N; v
/ y' X) m: P* u9 d, q
actionGroup.createActionForEach$message(list, agentSel);
3 E( i7 g6 V) }; D actionGroup.createActionTo$message(this, swarmSel);# K0 K# ?8 t5 l" Q& g" |
schedule.at$createAction(0, actionGroup);
; y% S! s* M! ]5 J; R schedule.at$createAction(1, actionGroup);
7 y2 S" B3 f* m; @ schedule.at$createAction(2, actionGroup);
, p' v4 y1 D1 |1 L8 }+ \4 A* i. p+ r( V
} catch (Exception e) {( p1 A0 E8 x- U
e.printStackTrace(System.err);. i T- D8 l+ a$ z
//System.out.println(e);
8 ?1 u0 D3 \2 D8 w. f System.exit(1);! ]1 X8 {' z& x( }' e1 Y. W
}$ `- F" D/ ~# O5 t8 N
/ z3 G2 o- v. M8 x" ]& ?, X
) L2 S) o) R, h! Y' j }3 f3 }. W2 |7 X: n% V8 F5 f% |* M
5 z; l j( B; J1 S5 y7 @ private void swarmSetp() {; P4 W0 v4 c) R5 X1 X% b
list.addLast(new Agent(Id));
1 P# B- r$ j; e, k4 r! g Id++;; q( i* [- s) s, W
}
0 H9 e3 x- x5 K6 U6 t
- H* c/ F* s+ O public Activity activateIn(Swarm context) {
6 V# S1 c9 I# L1 V' { super.activateIn(context);! a9 g5 g# F( ]# z! @
schedule.activateIn(this);$ t* y5 F$ M, L2 c9 X9 p
return getActivity();
, D, u2 r8 R8 }* c$ _- B! j }
( k1 j v5 k& X* L& O [( [4 Q/ x3 M* m5 c
public static void main(String[] args) {" @' z5 t, }: ]& `) z7 b" c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ N9 `. v4 |0 g: P2 W; M- V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ d# g) t, _) i" R0 t- R7 H1 m swarms.buildObjects();% g& L! |( P5 ]8 y7 K7 a
swarms.buildActions();
- {" d l x& g; r) j4 D swarms.activateIn(null).run();
$ R0 z/ Q8 y$ l) {3 s }+ f) U( r' U% S3 B; A2 j
4 T3 k4 [( v2 ~. S
} |
|