|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % }+ d, l8 K3 S# U) x8 V# f7 k* o
! B) {3 n9 M4 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 Q9 b4 i/ K" {" e* A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' Y2 w. X$ W G* _2 g/ j
swarm.SignatureNotFoundException
# e% t0 r: P0 ]- i at swarm.Selector.<init>(Selector.java:76)
x" s$ a! Y. x# z2 T2 R at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 ]5 x% k. ~" H7 H& w; n at ActionGroupDemo.main(ActionGroupDemo.java:67)4 Q. ~* H8 V, C5 G( K) M
+ A6 Y; E+ y& g3 i9 w5 F+ x
4 a1 R( v1 }5 B9 V% x
import swarm.objectbase.SwarmImpl;9 X. z# Z3 O+ O/ z
import swarm.objectbase.Swarm;
/ G* O0 M6 H4 _# E- X: i+ Simport swarm.activity.ScheduleImpl;; j. Z" G0 H, E$ h0 p# s
import swarm.activity.Activity;" m1 {6 s! ?) l3 T6 T" b6 Z2 W
import swarm.activity.ActionGroupImpl;
6 e8 @8 \! b; _; O7 aimport swarm.collections.ListImpl;# D) J9 ~8 z) x, @1 _5 g- v4 K# x
import swarm.defobj.Zone;
( k5 g4 M) D3 n+ i9 \import swarm.Globals;
+ ~- W( Y2 J1 q; n3 \1 Z/ Limport swarm.Selector;& S/ `1 w1 I/ N* Y# k
import swarm.activity.ActionGroup;
# i" F/ Z) S7 }class Agent {
" b5 |) S8 O S. ]0 n4 ^% t$ F char id;5 ?) V, I6 O/ {* @+ U& i5 l3 S
, U [- x" I$ c+ B$ b8 ? Agent(char id) {5 ~) o9 p6 y& J! W3 ^ Z6 U! U3 r
this.id = id;( m8 z+ W8 D$ m1 o) _
}( v* W7 O0 b' S1 M5 V! w& P; |( ^- K
. y M+ g0 `5 w
public void agentStep() {% R8 @% e/ \5 D
System.out.println(id + ":" + Globals.env.getCurrentTime());/ k2 C4 c. O3 k- t" p9 D
}
. l1 Q7 S3 w( |- d# q. M. V}
! R" ]" _3 A+ { T+ Z1 s* a% B8 D' D; v
public class ActionGroupDemo extends SwarmImpl {
v1 v5 \3 F* N3 c ScheduleImpl schedule;6 ?. c8 X3 k3 \
ActionGroupImpl actionGroup;
& |- K5 f: l# K' C! V# y! { ListImpl list;" m6 B3 z7 I% {/ `( Q! @1 m4 C0 q+ t6 n
char Id = 'a';
$ s0 `3 }) C3 A! u! ^1 m9 Z/ [6 R7 T6 G0 N% ~
ActionGroupDemo(Zone aZone) {
# c' h; D! |# g$ e, @ super(aZone);
, H# N8 b$ ?& J& X- L. X list = new ListImpl(aZone);2 w y1 `! A1 C" k% c: w1 d+ E/ z& B
swarmSetp();
: g2 p; V4 @8 h* e. u! V V actionGroup = new ActionGroupImpl(aZone);6 |# h' v# I4 a& Y" Z, b' C) s' v
schedule = new ScheduleImpl(aZone);
6 O! a6 x0 F" B try {
3 f+ Y. ^+ M7 w; u& W! [- V Selector agentSel = new Selector(Agent.class, "agentStep", false);' ]% D4 D: Q$ B% Y2 _" E5 v& @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! C, S5 p- k, s/ f& [) R; l. R
1 u* x: R) D7 M8 q4 q4 z) q9 p actionGroup.createActionForEach$message(list, agentSel); Y8 T3 c0 e6 j; o, Z& t' \3 z
actionGroup.createActionTo$message(this, swarmSel);0 D3 n* w% E& ?% S+ X* ]
schedule.at$createAction(0, actionGroup);
% m6 p6 [: D/ {0 ~2 g; T schedule.at$createAction(1, actionGroup);
) z. u+ d" o4 V" D* d9 ?7 p, \ schedule.at$createAction(2, actionGroup);5 i m8 [- p0 k( w0 M. C% i5 B
' }$ t3 {0 Y: w
} catch (Exception e) {; u, U& i9 g3 N7 f
e.printStackTrace(System.err);* n. ^" Z8 f2 w: A
//System.out.println(e);
' T* v8 b" ]- T- o( p System.exit(1);$ q$ D$ h I+ P. ^6 J: s6 j% l
}
0 K; K" c+ ~. x( \( t2 M
, i: o) e X1 N) ?
5 N7 h8 T& b; n+ b }
3 n$ ~- J; z# ?* w* R% U
, A3 N) K' b" n2 t- G private void swarmSetp() {
$ [2 P" X; M. ~. t& S) a list.addLast(new Agent(Id));; j/ |+ D. o4 x# ?
Id++;
6 X; |6 k; |; n$ B }1 i0 V# J2 A3 r2 [
* a$ m# m# G0 D) v
public Activity activateIn(Swarm context) {; _+ }. w/ Z0 @" V% \
super.activateIn(context);
! c3 R7 O9 ?8 N schedule.activateIn(this);" M$ ]- X# i0 Y3 p' }5 b `
return getActivity();
$ d4 n1 s. j+ t% @ ]% F }
4 f% j1 o9 }: n D& w" ]# j) R
; `1 z, S8 _) |5 f) {, L, y8 e2 `! W public static void main(String[] args) {) C/ G% Q4 O: R; q1 Z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ U$ S* ~+ O3 D' Y1 {( V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# s S: S6 g* ]) v2 l3 p$ L swarms.buildObjects();
v, \# L) Q9 X/ @; D swarms.buildActions();
8 Z" G2 B6 [4 n* F0 S* u: Y swarms.activateIn(null).run();$ A( O0 F, v0 d: C" F- A" \
}2 g) @% ^. W; z! N
9 `6 y0 ]7 G V
} |
|