|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! r; \9 y4 p7 m1 w) ~* o- b7 h2 {4 J% J% i" b# x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- q+ Y1 y8 ~6 a5 e- I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 A: r# g; t+ s, \4 u1 I5 S9 b
swarm.SignatureNotFoundException
8 B% m0 n# V: D8 X at swarm.Selector.<init>(Selector.java:76)* u8 L, \; F+ |$ e8 S! v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& z# X2 Y5 b. A3 k at ActionGroupDemo.main(ActionGroupDemo.java:67)
! a+ J. I. a# T; X
2 ^0 R6 ` m% h h) O! @5 i$ l
+ P# Q4 i. `& i5 M- Rimport swarm.objectbase.SwarmImpl;
' T3 j5 k' J' q" i9 W- t7 uimport swarm.objectbase.Swarm;) I8 }4 S7 S2 I. U$ c& }
import swarm.activity.ScheduleImpl;5 X m) C( ?2 M* |8 a0 y: |% e
import swarm.activity.Activity;
- w4 Z4 ^# b* ]import swarm.activity.ActionGroupImpl;1 q' m8 M/ _1 I: x G
import swarm.collections.ListImpl;
. F4 J8 D9 P% `9 X2 i# F6 \import swarm.defobj.Zone; . Z* S9 L! g. D9 t) \+ S N
import swarm.Globals;' c( a9 I- \! I. ~. ?5 p6 ?: ]
import swarm.Selector;, @4 w. {8 Y/ B6 K+ P
import swarm.activity.ActionGroup; ' O1 u3 K+ b- d
class Agent {* D( x4 j- H9 G8 x
char id;$ s [$ w1 n! d, f& F
' H4 R3 Q3 m/ ?9 r2 L* p Agent(char id) {& S9 C& S/ Z" u' I# z4 w+ l7 Q
this.id = id;. ~% t a# f% q" U8 k. v
}% J- u# L4 p o7 j6 C
, G$ B: q: O+ G' p! Z9 D public void agentStep() { ?+ b, f, U) z# p
System.out.println(id + ":" + Globals.env.getCurrentTime());
8 X9 B) P5 o$ e4 { }) F! L" g. @; M' s4 f# }
}! n7 v2 `7 F6 G2 e, O$ t5 M
. n! D7 E# B5 w. K
public class ActionGroupDemo extends SwarmImpl {9 y$ N: |; N0 R4 K. s$ V
ScheduleImpl schedule;
4 D. }2 A! p% `$ {* ~ X ActionGroupImpl actionGroup;
1 N5 c. L. V) e* x7 a3 d8 g s ListImpl list;
* @% I0 r# q# n- k8 @ char Id = 'a';1 A' W& u1 V8 r# T! c
: F* r8 x8 I) q* |: i
ActionGroupDemo(Zone aZone) {
" f+ W( V1 V/ e super(aZone);- X4 R \* C/ Z" ~
list = new ListImpl(aZone);/ H: j- i; d* o
swarmSetp();
- s4 A" v$ H/ p; Z+ i6 N actionGroup = new ActionGroupImpl(aZone);
6 D6 e" v3 w' p% g" T* I schedule = new ScheduleImpl(aZone);2 `) l+ S, r0 U, I2 `& S- Q
try {
- {. Q' B* [4 D4 ~+ S Selector agentSel = new Selector(Agent.class, "agentStep", false);' R B6 m1 C# U2 Q: M; Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# x) Q: d3 k, x! m
7 o, j u. ~8 _# i actionGroup.createActionForEach$message(list, agentSel);* i* X+ w7 G2 r
actionGroup.createActionTo$message(this, swarmSel);# Y4 b8 j" ^6 n3 r& D
schedule.at$createAction(0, actionGroup);
3 |4 m" `! X \ schedule.at$createAction(1, actionGroup);
" U' \4 b- U1 F6 r# X# ^# v schedule.at$createAction(2, actionGroup);
, g/ r! n1 X) C8 c" q5 W" P! V) a4 E2 {3 }" i; j" J6 V
} catch (Exception e) {
6 E1 [4 e* l3 K' t# W+ p- t0 Q e.printStackTrace(System.err);
. g$ Z) m% p: e( k# j% ^7 i //System.out.println(e);0 J' j3 ], V6 _' Q
System.exit(1);" k7 _ K) |5 g+ \4 H) A
}$ r5 x1 h& R& [; q
* O' ]+ s* h4 y) e7 Z( J+ ^. @% {8 ^9 }% q# }: ]
}
9 ?9 |, T o- n- j3 M: |' x4 i: t. R# e" b& L
private void swarmSetp() {
# o3 k1 N% N, ?" v* ]. A list.addLast(new Agent(Id));- y+ D- [( u: O- l4 ]/ O! R
Id++;# h1 n6 W1 a; m; H. z T, Z
}
7 S9 |8 a* ^" N8 D/ n" n% N' m
0 m% {* A- L/ o# F; ~ public Activity activateIn(Swarm context) {$ ?7 ]! z2 {; I" P9 U1 G2 G6 p# R
super.activateIn(context);! s# T' B0 N9 e. R( a
schedule.activateIn(this);
7 P/ i$ C% q$ A2 C* } X return getActivity();
0 g+ Z# h. e( I" A/ z/ I$ w7 Z }( Z S8 H2 b0 B% ?7 s, b* ^2 Z
8 M/ P. t; g! j3 f( O: H. f q public static void main(String[] args) {' f" [) x2 M# O. s$ j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 R3 [4 H5 X4 d' N Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. C& Z: n" R$ v% } swarms.buildObjects();
9 U) u3 i8 D0 z! N7 Y- y- Y5 c swarms.buildActions();
: x, R3 [( K9 D& f' w3 T* k swarms.activateIn(null).run(); ]7 v8 c" F/ ]9 w; F$ v, [' f
}
0 v0 F6 T+ m3 y& h/ g) i, i8 A2 ^
} |
|