|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 \# Y) X9 e% _* z
) p* D+ p% V$ N; f* j1 w: `# |! l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 r1 l0 b! x: e" d! F+ d$ |! W$ A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. ]- W I3 ] @: qswarm.SignatureNotFoundException1 H2 }3 p) K" H0 U4 j3 N
at swarm.Selector.<init>(Selector.java:76)0 i( W4 A7 p: ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 E) ^) J% C4 P0 j% R at ActionGroupDemo.main(ActionGroupDemo.java:67)
. h* `% V+ N! M5 k5 { I/ R# e
. t; o" `! h2 q! q- g# D: Q. [* ?* f" Y
import swarm.objectbase.SwarmImpl;
. Z$ }" W2 D- Gimport swarm.objectbase.Swarm;
' [) F# o3 C9 F( Q% r1 Fimport swarm.activity.ScheduleImpl;
- f4 t; }4 |3 Z4 m0 ^import swarm.activity.Activity;
" O+ m X& k# C1 B# i( n2 Nimport swarm.activity.ActionGroupImpl;8 C1 m) b+ m e* ^6 j
import swarm.collections.ListImpl;
- L0 ~- p5 ]! w# O: M8 \ x M4 F* V% qimport swarm.defobj.Zone; : A+ ]3 l9 N! b6 f4 A' K
import swarm.Globals;
J- I0 _/ h" mimport swarm.Selector;6 ]) w/ z3 r" x$ l. ~
import swarm.activity.ActionGroup; 3 z4 `9 y5 F8 F: x
class Agent {) w9 J Z1 g) [4 F, g/ D
char id;$ f$ @8 m* ^* |$ K. j
4 _# t$ ~, r; |- t1 S' \1 L3 W" k
Agent(char id) {
3 R/ n+ w4 i8 x& i, E this.id = id;; F6 f) z2 Q( Y/ b7 q
}
( B9 y" E, R& E0 A7 n
! a. Q' T5 z- C. e* K public void agentStep() {5 `8 A' _' R6 a3 O ?$ l7 e; r
System.out.println(id + ":" + Globals.env.getCurrentTime());
: \4 U- q5 i; P% q% q/ E! N1 H/ _ }
) T# }* I3 Z1 U0 ^/ K' N: a/ F}
+ T4 W, b- v9 H1 Q9 S3 I% O* I0 C, v6 I7 Y! ~1 O* ]
public class ActionGroupDemo extends SwarmImpl {/ V: v8 j8 R( H5 ^' W, g+ V
ScheduleImpl schedule;2 F5 W# k! X' f4 v7 E, B
ActionGroupImpl actionGroup;9 {% o0 K9 D* B/ R% V3 E% ^" V
ListImpl list;6 V7 D, j2 M, Y% ?
char Id = 'a';
! a! z& W6 z0 r% p
- F/ F, I, s1 y6 Y V. \ ActionGroupDemo(Zone aZone) {; t4 B" u9 a3 F4 `# r K3 g
super(aZone);
- q# C6 \* j, z list = new ListImpl(aZone);
; P1 D- ~1 w8 b/ C V swarmSetp();
, B, B4 w0 X8 S; ?, C actionGroup = new ActionGroupImpl(aZone);
! ^* ?( K* d8 c, \8 N schedule = new ScheduleImpl(aZone);& D# N# k: M9 }4 b% \: r1 x
try {
6 i; N" `- l8 ~6 P6 } S Selector agentSel = new Selector(Agent.class, "agentStep", false);8 y* a# W' g; ~) Q; N7 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, | f7 W9 [: e+ n; {: Z
) t' z, S3 d# ~
actionGroup.createActionForEach$message(list, agentSel);
+ A; X/ q) v/ u1 e6 ~- k actionGroup.createActionTo$message(this, swarmSel);
- }9 b. [& N# [2 r schedule.at$createAction(0, actionGroup);! w4 [+ \; Q6 p. C! i& i
schedule.at$createAction(1, actionGroup);; Q9 @, K6 l2 j* J
schedule.at$createAction(2, actionGroup);
# h# {$ |* n$ G) A3 w
6 C O: m+ Z8 G- X } catch (Exception e) {/ z* p) S! o; O2 h
e.printStackTrace(System.err);; _" d( t$ h' L0 k
//System.out.println(e);/ `3 C' m8 S. [6 I- d2 r
System.exit(1);
4 J" q0 y3 |& U7 |& o4 u4 l! e% z/ a }
" H2 j; p/ F4 n; Q# W
- ~) r6 E1 Q' \" b
# y" `2 B7 d/ Y6 X }. B- e) e: ~& m! }; z
1 A, |2 f0 {5 M5 Q
private void swarmSetp() {
; k: b% z2 n" P! h) C7 ` list.addLast(new Agent(Id));
3 j6 E( a9 f+ S+ Z, X& u( _5 r Id++;% f7 {" P. C1 D& V- [0 E
}
' u7 P/ k. I4 {- N! f! {; y& L+ W' `# n0 n* O |7 q2 T$ Q
public Activity activateIn(Swarm context) {
0 k* }5 N0 D, z super.activateIn(context);
4 `* E* W; z M- N; v# Y4 d" y2 C4 I schedule.activateIn(this);
" X% |6 p4 _- c- [& i return getActivity();' O' r. B+ _' D9 d2 a7 p$ g! a
}7 w: E$ e8 _% P0 G( D& s
0 ]# H. }' r5 M! j: ~* V' ? public static void main(String[] args) {/ N& Q2 P( A) k, X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 o2 ?2 W5 Q0 z/ {7 i( ~& k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 v* p; |) }$ F8 {6 S& o
swarms.buildObjects();
4 N& c: b) D9 k" y) t3 u$ l" O$ b swarms.buildActions();4 E; w; ?& t. I8 h% L+ d
swarms.activateIn(null).run();7 O6 s9 ]' e+ c
}, ^; [% w, [8 r2 L6 [6 B+ U
$ P h5 }: O0 v4 e4 N) D} |
|