|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, T, j+ p# N% Y1 Y* w) a7 v/ x( ~7 `3 H7 [4 p, L* b# |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& W. D: q" k8 w8 O3 a4 u' R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 a6 W* s7 Q5 U+ e' ]% i6 g3 i9 u3 Qswarm.SignatureNotFoundException; ^, \# F {5 W) C8 W K
at swarm.Selector.<init>(Selector.java:76)
?5 i5 n8 }, a7 j. R at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 i: {) e- n& B at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 Y2 M; M8 Z2 J s) C9 N6 H+ J8 K* q, l1 y$ i) ]) X
* v$ V7 m9 f5 y7 W3 yimport swarm.objectbase.SwarmImpl;( k ?4 ~4 Q1 Y" V- Y8 }
import swarm.objectbase.Swarm;8 C) h" m+ u$ i" b
import swarm.activity.ScheduleImpl;1 [ N1 H& j/ |: h$ e* K
import swarm.activity.Activity;( @* N6 Q3 r( Z. X) r
import swarm.activity.ActionGroupImpl;& u* |% I3 R, R5 u9 i2 t! S$ f
import swarm.collections.ListImpl;
" A! N2 \1 K: Eimport swarm.defobj.Zone; - y; O# }: i+ n
import swarm.Globals;) |8 _* ~6 m% V- a& l! M
import swarm.Selector;
# c$ C( b* B$ M; d" S- Q. q/ fimport swarm.activity.ActionGroup;
# }+ e _* B& x+ F. W1 W5 o8 e/ f) Wclass Agent {
. ]" |1 H; v! r0 z4 A' c4 ~ char id;
: T- ~ s# S4 X1 j: |
; K! h: N8 L2 ~+ | ]8 P3 @ Agent(char id) {
% ]+ F% O- L* L this.id = id;* |! `7 \) e S4 M/ C" F8 }
}8 m) t' F7 d5 L, E, {& O
, N. `. ~" R; ?$ |/ ~9 W- h public void agentStep() {' n3 z0 E B- Z
System.out.println(id + ":" + Globals.env.getCurrentTime()); |/ O6 [+ w9 m1 a. s! o' l
}/ w6 q: `# O- T. z b. q* I' C
}; }, D2 _" D& K& X! F4 f5 ~
$ V. ~- B1 M0 t# q8 ?; b; j
public class ActionGroupDemo extends SwarmImpl {* T. f4 ?3 [9 H t* B5 j
ScheduleImpl schedule;
" t9 } A0 W2 ~% [% `+ @: Y ActionGroupImpl actionGroup;. V9 U: I, v/ V1 n6 A. i, Y% u) g
ListImpl list;, q6 a/ e* E& n5 l H2 b
char Id = 'a';
' V7 S3 M t$ V: f
4 ^. y% a6 ~; x! E- Z" C4 p ActionGroupDemo(Zone aZone) {" l& \) K' [2 W( Z7 \9 L
super(aZone);, p+ G# p( D; P6 l0 r9 g
list = new ListImpl(aZone);
2 e6 a9 ~9 ~- o# \0 F swarmSetp();* r: J7 c0 \5 @# G
actionGroup = new ActionGroupImpl(aZone);
' [ R7 i1 J2 J3 C G1 t schedule = new ScheduleImpl(aZone);
3 V' D a2 e" y& i" t" w5 ^5 k try {
2 M' j' z2 v7 ~8 k/ i0 k8 z/ X) d Selector agentSel = new Selector(Agent.class, "agentStep", false);
' h8 v+ d% ^6 I% g# W4 b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ g4 ? J6 w& w& u3 o $ Q. P) i" e0 T3 Z5 C& V8 v
actionGroup.createActionForEach$message(list, agentSel);! R, n% {9 ?/ n( A( y) C
actionGroup.createActionTo$message(this, swarmSel);
7 E: p7 c3 W1 v# N; _ schedule.at$createAction(0, actionGroup);& B3 q$ H7 q. a
schedule.at$createAction(1, actionGroup);
0 s' {3 b. f: v) ]" \, c schedule.at$createAction(2, actionGroup);: d) q; |% Q# s& k
3 o; y) {- h1 a1 `; D) |% C
} catch (Exception e) {
( L, f7 F T; C0 [ e.printStackTrace(System.err);
8 k5 i+ t# w$ W; q3 U //System.out.println(e);
( h- ]6 Z1 q/ s$ T4 x1 K$ z System.exit(1);
* i) J8 b$ w: c! l }
' D [, O) }" t4 Y. R+ f9 `2 y y
- s3 y v( \% o) d7 b& m, A; X( z. X" y3 u
}
2 k9 d% G" A$ \0 }1 l5 F) r0 d+ i- n, ^7 k% M+ g
private void swarmSetp() {1 ?$ I' J7 I$ T: L
list.addLast(new Agent(Id));* I% M$ D: j, M' g7 m: y% y
Id++;
( m8 W8 E2 t& p7 X }
( C- U% T! R" h: }: z5 ~6 V& m; S
: T w7 Y1 W& j public Activity activateIn(Swarm context) {
0 d& ^7 W+ r% M9 x+ X' c super.activateIn(context);
x; u" | j5 ? schedule.activateIn(this);( i: y& j0 L* s6 m4 t
return getActivity();
, A5 A; `1 i; w% O0 M }
2 d+ O+ }3 C, M( h7 A8 g. F5 v5 I2 K( E& M
public static void main(String[] args) {
% B" p. W! ~+ |! B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 ~8 V: x* K4 J$ y( t. A: O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% l/ R/ U3 J5 U; U1 X7 \ swarms.buildObjects();
! z1 K- e& d! k7 ]' H4 |9 h swarms.buildActions();
0 N% N0 W! V7 o. d swarms.activateIn(null).run();
5 _' ?5 l: s% D) v; m2 I }
5 u1 w9 e, h' T% F, k
; M$ L( q" @% ]2 G5 l! k% Y. h: x5 `} |
|