|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; d+ c: y0 W6 U9 n' X- z- u
1 k5 {) ~% ~2 C, T' D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% D) D. ]1 G- y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. e9 r; }* ?0 w
swarm.SignatureNotFoundException
& f6 o+ S' I! F at swarm.Selector.<init>(Selector.java:76). @" n9 i" o ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 }2 L& H0 g% v" N% A' I
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 | k9 i+ B9 Q7 x4 I
( x8 `) K7 P! V: w+ g! ?3 C8 s6 r1 w
$ c T( }* R5 T# @import swarm.objectbase.SwarmImpl;
3 Z& \" z* A: H* q$ Fimport swarm.objectbase.Swarm;/ i" b6 t, Z3 x. c+ ], \ \1 e
import swarm.activity.ScheduleImpl;
. ~8 \. M# m1 R5 r* R: E; fimport swarm.activity.Activity;7 d' d+ ^7 e3 d$ j# Q( G8 `
import swarm.activity.ActionGroupImpl;! |. v) M; m, U, R3 T7 h' j! k
import swarm.collections.ListImpl;
# R# O4 A; Z- a$ p9 x& g1 oimport swarm.defobj.Zone; 2 P# |) X0 v$ Y% b) g
import swarm.Globals;
2 b3 r2 A$ V2 V6 e/ P; v# ~import swarm.Selector;$ v& V* v! `8 \& Z: g
import swarm.activity.ActionGroup; 6 b5 f0 N* w2 V; i3 k
class Agent {
5 ^" T' D; f/ r char id;
- C# t! Y8 I0 `: x& B2 S$ F' I; C5 n* J' W0 D. |" O6 `9 P
Agent(char id) {+ E0 p% H6 c2 A# u- }! U7 a% T
this.id = id;
i n- J: x) o, }% ^' Y; v }
0 U9 {5 N# C+ \. `& g" e* A; z3 S! @' e e
public void agentStep() {
+ K% S5 w0 }1 b# C& e* j2 i System.out.println(id + ":" + Globals.env.getCurrentTime());1 {0 S$ l' i- Q# {# R. q9 l
}
" t- x Y+ O$ d& b( D! k% t}
0 @: v i% O& R+ X
4 x$ s! @( ^9 \* B7 w) b! _public class ActionGroupDemo extends SwarmImpl {9 \! ]3 ~ M* \
ScheduleImpl schedule;- A# h3 y- x! O
ActionGroupImpl actionGroup;" S" X) W8 G; _. G' Y- n
ListImpl list;2 g& G; w3 E. u4 ]6 s1 Z7 Z: C
char Id = 'a';& ~4 ]; T$ W2 q6 n# ]6 u7 q
2 r1 Z) p D$ b3 F- s/ y% K: ^ ActionGroupDemo(Zone aZone) {
Y: c" B8 t4 @: H- T8 J super(aZone);' k! H# q5 H8 |0 v, D5 E3 c
list = new ListImpl(aZone);
) _, I* m6 v& \5 Z# x* S7 B swarmSetp();& Y! u. T M+ b4 R1 z
actionGroup = new ActionGroupImpl(aZone);! u! I' A, i+ y. E8 n: e; Q
schedule = new ScheduleImpl(aZone);
' p. y1 k+ O% @ try {7 R D+ P7 G) h. w9 {' i; ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" |4 v2 K* S0 ]+ R; q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ X8 r K0 w( t/ q: T1 _
$ V2 H/ X8 @. B* F actionGroup.createActionForEach$message(list, agentSel);
: g& R3 Y- x% X/ V3 ~ actionGroup.createActionTo$message(this, swarmSel);. U. A3 [4 @- A0 }
schedule.at$createAction(0, actionGroup);, }; j/ |: t2 ^1 ^8 t! L' _
schedule.at$createAction(1, actionGroup);
3 `8 M# }- R& }- J m8 U: b* G* Z R schedule.at$createAction(2, actionGroup);+ W% I: g. H; @ b/ s: s& }6 S; E
4 Q' m! L4 X9 X7 x# T
} catch (Exception e) {
: t& A N: Z# j3 k. R e.printStackTrace(System.err);
9 ~7 x( F9 z5 X //System.out.println(e);
/ K$ M+ v4 s# \ _1 a& ? System.exit(1);% q9 w; {, H3 W: |6 L
}
* ]7 L- u0 `& |( o! q; d! y. L) [& n& s. G0 w
9 x7 e' ? f1 B
}/ K( ?, w0 c6 d/ d* R. b, T
4 W1 C2 x0 g1 }' U2 P3 j8 K private void swarmSetp() { {; ~7 E C; \6 F; Y
list.addLast(new Agent(Id));/ e& x: F. I% c* J3 J4 s
Id++;
: W& q. b( Q6 G$ Z1 x }# M' y4 ` M1 Z. l9 {3 \
9 b- }4 T" A Y" h9 k! m
public Activity activateIn(Swarm context) {
4 E* R$ ~: w# ^+ w7 ~; } super.activateIn(context);
& r: J/ P% Y) w1 U schedule.activateIn(this);+ J" Z9 J* }% C) @( ]; l" U* t K% \
return getActivity();
& {: N. s; x+ }$ x, x }
, n: I9 O% p( K- K( L* x0 x) w; S% b! g. P% y7 D- C
public static void main(String[] args) {
9 U R1 Y& d3 V. y9 L! V" F( | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; ]1 f% u. Y. Z2 d8 j$ O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) a2 u. ?- x' f: f2 f
swarms.buildObjects();
# V# L3 O. o8 ^3 A; Z swarms.buildActions();! F! _# b1 J) q) ], S! X7 c
swarms.activateIn(null).run();
* E; }1 x3 F, Q2 T/ p9 A }
) _1 T- \% ~ _
" V. g" O3 s6 r2 ]' M} |
|