|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 b0 ^0 `2 C6 S7 z% Y+ h
6 Y: L; }7 t; v* Y% }: R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( ^6 G$ a% f* R$ ~. u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 {3 D0 C5 k6 N0 ]swarm.SignatureNotFoundException
3 f/ V7 I& F4 j at swarm.Selector.<init>(Selector.java:76)
3 u: Z) `$ T9 ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 ^# z# n l7 }% m at ActionGroupDemo.main(ActionGroupDemo.java:67)
, ]+ S' g0 I8 \0 h) Z: t' g4 n% I1 q8 _
) v7 g3 t% h7 q9 e$ aimport swarm.objectbase.SwarmImpl;* h9 V0 V- |# @5 Z. {9 X2 p! r
import swarm.objectbase.Swarm;3 a. D% I+ q; T
import swarm.activity.ScheduleImpl;
8 C f. |4 ?. z9 Y2 G! q6 Zimport swarm.activity.Activity;) J n: s% N. s- E+ ^
import swarm.activity.ActionGroupImpl;2 }# N9 k0 ^9 d
import swarm.collections.ListImpl;
% g" e. d( ~6 U1 T2 ~6 `# M, C) ~import swarm.defobj.Zone; " Y+ Y* W% U, l0 g0 S' r6 G, e" B: V
import swarm.Globals;
0 j5 M' I2 X* \) `7 _7 ~+ G' R! @import swarm.Selector;( k2 T( y E9 }1 c/ ?
import swarm.activity.ActionGroup; 3 |0 _0 ]/ Y6 M. L1 ]+ r7 d' F# d
class Agent {# Q1 h$ @' Z# V& Z; _
char id;
8 c. u+ g5 l8 ]3 G+ b9 ^! X: G9 N, {/ u V; ~5 ^+ @* p
Agent(char id) {# ?9 |. x( X" M! {& [; e) t7 W( \
this.id = id;
6 a: N, k- R6 p' ]& i8 H# t }) n# j# [6 Y( q. V
8 x$ M4 e' c5 s1 m$ T4 }: K
public void agentStep() {1 H2 i; _3 m* O# S6 i+ F
System.out.println(id + ":" + Globals.env.getCurrentTime());
. S; p n( k" }! n }' l: G7 ~# y3 Z
}9 s6 @0 f" [, `; R6 C
) h! \6 Z a% y- i' |5 T
public class ActionGroupDemo extends SwarmImpl {
6 Z& T$ W0 v2 Q5 G& V ScheduleImpl schedule;
" X2 _% e& o" `* }: I ActionGroupImpl actionGroup;
; @! W, ]- g9 s4 G/ B ListImpl list;
2 s5 _, B9 q/ C3 T char Id = 'a';% L0 t& x0 L* E: Z* B
' h# _8 u& @, j
ActionGroupDemo(Zone aZone) {9 Q E5 q; `- a. _
super(aZone);3 f+ u5 t( ~3 v7 P
list = new ListImpl(aZone);
+ B; B3 [0 `, i/ T* S) S swarmSetp();! W# F& S1 m9 f) }
actionGroup = new ActionGroupImpl(aZone);6 Y- h: R$ X, G0 P8 S- k5 ^
schedule = new ScheduleImpl(aZone);
p3 d' |" u0 ]: a- ~( O try {' @0 C x% G* c, D' o7 M7 B* @
Selector agentSel = new Selector(Agent.class, "agentStep", false);( G/ I; w3 k7 `, z. M! i" i: s Q
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" J7 C5 ]+ u. Q4 g' u1 J
/ h* ]; ?/ H2 c+ N, c actionGroup.createActionForEach$message(list, agentSel);
9 P, S$ d% F& }3 {: B* D1 p( ^* N actionGroup.createActionTo$message(this, swarmSel);
; k. c- \. c3 j1 @. F, @8 m schedule.at$createAction(0, actionGroup);3 G2 t- ?' `. H( X
schedule.at$createAction(1, actionGroup);
! ] ?# l* ^% ^ schedule.at$createAction(2, actionGroup);
' n3 f; p P* @% R2 U. f; {. G* Z- A# }
} catch (Exception e) {
% T3 D4 R& G8 ~5 p5 L+ y5 F e.printStackTrace(System.err);
+ }, I# ?0 |' d Z# S //System.out.println(e);; M" z0 ?# S! _0 F2 ]* r
System.exit(1);( r* P; E8 l1 r! C9 H) g
}
. p) ?( q( x/ L+ x2 N
' t# ?2 S# ~8 \1 E* P5 X I
) ?, x' X4 s7 T }
- A) g; h9 `% q# K3 t u1 i
/ d* x. W" @0 c, T: G private void swarmSetp() {" q$ k& N; m$ a- R- g
list.addLast(new Agent(Id));
2 G8 W1 o( |3 n( U Id++;8 S: j" Z, z; ~4 e
}; t g4 z! y8 A0 F
2 a5 Y# x9 B" r3 X* D8 o5 u" c! G public Activity activateIn(Swarm context) {
! x3 c6 f- W6 T6 D& u% j super.activateIn(context);
# `( K& M0 T1 p schedule.activateIn(this);- x9 A. o8 p p7 x
return getActivity();$ F* X+ ?# z4 U* D1 E. x3 Y9 D" A
}
2 @3 M5 l1 |" y* V1 t; d! Y/ A; T4 _0 n/ U
public static void main(String[] args) {. \3 K3 E2 J% I8 m
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* q4 ?- ?% r- W# Q; ~
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& C" d) V6 |* O2 B. \ swarms.buildObjects();6 s) `( K+ C; Q
swarms.buildActions(); a! \; @! y/ h. k, p. y
swarms.activateIn(null).run();
1 p- y/ M/ h0 b" J- w6 { }$ M/ m$ V! M* H2 R
5 Z5 ], v5 W, j% l' Y! f} |
|