|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' y7 h. d$ F# u' L$ ~- ]
I8 x' J* c Z0 I# z: T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 W7 d% D* o$ W/ E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 _: E/ F& @/ Z' M7 {swarm.SignatureNotFoundException
5 L+ n C# T/ T |2 w% s9 a4 B at swarm.Selector.<init>(Selector.java:76), l' W, O- y, e/ k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37) z; T5 E! `: l( K- C) w& r
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. b5 ~9 n* K# q$ n4 U5 S6 B
, N- q @ @! H! M t: g7 k6 i7 y6 x0 b" k0 V4 P
import swarm.objectbase.SwarmImpl;
9 j2 V/ w' D, y- \9 R- Y! _import swarm.objectbase.Swarm;
( ?- c9 N1 e( _/ G1 Z5 E7 Iimport swarm.activity.ScheduleImpl;. ^+ t. N: X' E: h& i% u
import swarm.activity.Activity;
K5 y* q- l& Z5 @import swarm.activity.ActionGroupImpl;
# t/ M+ E) u$ J H7 rimport swarm.collections.ListImpl;7 a! d4 D4 L! h% l K4 @
import swarm.defobj.Zone; " Y& w4 Q$ `9 @0 I5 L
import swarm.Globals;
3 R3 V! a% r3 @, a; o2 @" h [: @ }import swarm.Selector;" T3 f6 C" t, {6 X& f
import swarm.activity.ActionGroup; * o" y3 v7 F1 {+ V/ V6 h- D
class Agent {$ m s5 }4 M& u' H6 Q7 b7 }
char id;- M$ ^# W Y) Q7 S
- w6 ~$ {1 W0 r3 l7 T* V _- u
Agent(char id) {
' E2 z- U. I- u: C' {* ] H4 U this.id = id;/ Z% T M" A7 {
}5 E) v1 Q: F0 w Z8 }8 T
. }6 J3 J' F, N0 X; `* K/ D
public void agentStep() {
! ~! w7 Y. Z/ b- n6 l System.out.println(id + ":" + Globals.env.getCurrentTime());# y1 d; W; s$ P' c! ] O
}
. U% i1 W1 ?5 w8 |}
0 t) P8 s1 s6 i6 L- {" z7 O, M1 n0 g1 x& Z0 {' M$ C
public class ActionGroupDemo extends SwarmImpl {' G1 o# H" v8 b$ O
ScheduleImpl schedule;) h. ^+ _* l2 ?$ P& \. @ W) N
ActionGroupImpl actionGroup;
6 W. B4 \+ y7 e- ]9 _ ListImpl list;
- ]0 p/ [9 r8 I: s char Id = 'a';
% M- Y+ z# b4 G- J! a
( ^& \1 w, [. c) f0 E; l1 ^2 R' V ActionGroupDemo(Zone aZone) {
}4 `, E; l! \, A- W: Y! U super(aZone);8 Z8 N: `' J% A
list = new ListImpl(aZone);
$ U! H; a. }* f1 |7 d7 b swarmSetp();
: w* `6 s; I5 n' \- l: d actionGroup = new ActionGroupImpl(aZone);
4 A+ i6 M# K& Y2 r: W schedule = new ScheduleImpl(aZone);
4 q- f! X3 Y9 S4 c4 _ try {8 r- B( F0 a ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ R' L2 p; @" M2 y9 I/ c4 c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 b8 n/ r3 Q3 d+ Q* Y- p ) S) X4 i! ^, `& j% q! k/ z/ j
actionGroup.createActionForEach$message(list, agentSel);
4 }' V# A3 v" l# F3 X) T actionGroup.createActionTo$message(this, swarmSel);
' r5 g* o$ @$ I ] schedule.at$createAction(0, actionGroup);
& ?7 s5 a% |4 m5 x3 c0 \- P schedule.at$createAction(1, actionGroup);
1 G- z4 r6 J2 m6 j- F S9 {! Y2 Z schedule.at$createAction(2, actionGroup);
4 }" g( G7 D3 {2 K7 G9 N, S; Q" a! `* I
} catch (Exception e) {
; N9 k+ o% `* M$ d e.printStackTrace(System.err);
# A$ b P0 d. q$ n //System.out.println(e);
5 q6 s, f3 |. w. N8 W5 z* B) C5 l" W System.exit(1);
, P/ N5 m8 Q1 n }
" y2 N# p3 @; q1 Q( p. S6 i9 \, K% _0 L
' `) d- Y* X$ v; C- E: v' w u* r
}. p: q! |. ]- g( z7 [
1 [0 C1 L* D& V/ `
private void swarmSetp() {( \7 ]/ k4 e+ i- s8 a1 s4 Z
list.addLast(new Agent(Id));
% H0 X2 N* G$ P0 p& U( l s& g Id++;) O+ t% U) V3 N, \7 [( i3 M
}' |) {. |- ` L# b5 q: y+ p2 y
1 P1 _' o8 V, Q+ N' J( Y
public Activity activateIn(Swarm context) {
! [' ^+ l8 w# F super.activateIn(context);
& U& @3 Q& h& v schedule.activateIn(this);0 t9 d) t4 {" L, ?& N$ V
return getActivity();
4 \; _3 V1 Y ^' |$ F' C z5 ^ }9 R( \2 R- Z, ~' q' @
: \, O) W; A3 z' x0 ?0 Q public static void main(String[] args) {
% F9 z0 f6 h) d; Q/ t8 L: l% m5 E Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: q4 q& W' H# l, ^) Z9 p Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# |( k* y! Q" y, W# X5 w
swarms.buildObjects();/ I9 n' h, \- M& o
swarms.buildActions();2 ~: L& o# G8 [) }$ a$ ^# u
swarms.activateIn(null).run();4 }- R6 K5 C3 ?2 D5 s7 \
}
# U; g1 c+ w6 d0 `5 Y+ H
) m" I, p9 ~+ r7 ?1 t; a/ N} |
|