|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 f- J3 }1 r, W/ |+ N0 Z8 y
' e4 s o7 d) @# L1 x4 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 Z/ `+ Z/ a, u/ t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% f4 l) e! l6 Y! w) N
swarm.SignatureNotFoundException/ Z0 q b. W/ `# S
at swarm.Selector.<init>(Selector.java:76)8 [- k) D% T+ }# K
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, n! }" J9 |3 j' ] at ActionGroupDemo.main(ActionGroupDemo.java:67)/ [1 E% X' `$ j( I8 |9 U1 \ Q
, i% u* E7 m$ D: s: D k w$ f
. F |; b, r; g; w6 v
import swarm.objectbase.SwarmImpl;% x* t, _8 \% ]" |$ o
import swarm.objectbase.Swarm;
) u9 ]2 J/ f/ Z. H% W9 Oimport swarm.activity.ScheduleImpl;% k5 r( x; Z$ K0 M7 g
import swarm.activity.Activity;
' y9 E" N( l {, _. D D2 Gimport swarm.activity.ActionGroupImpl;7 R' X$ A; U8 g% ^) k$ p1 T
import swarm.collections.ListImpl;
, W) p4 b" I |* K; @; Himport swarm.defobj.Zone; + |1 F7 d& }6 v! _$ f7 d) a
import swarm.Globals;
$ A& C/ L! a/ U4 {import swarm.Selector;6 F1 l: v: ]- o
import swarm.activity.ActionGroup; ! j% S4 K0 m$ P3 x
class Agent {7 w, H% c& a/ W
char id;. N% n$ j1 H+ ?; }; R6 u8 A: g
) Y! Q0 n* t+ r3 Q+ A# b
Agent(char id) {& }8 l2 H! a5 i0 b
this.id = id;6 t# C% C$ D5 d( C& w) j
}# L1 H' K5 U0 \ }/ c; f
# N" t1 F, n& d public void agentStep() {
4 ^# F. t* }8 S: r System.out.println(id + ":" + Globals.env.getCurrentTime());4 @; \- V% n( v% N% N0 ^! N$ l. V8 E7 W
}
: Q$ x% E. w6 R$ p, {} S0 @3 z/ P: O. o" Q# e
8 V7 |+ v: ~& ^ opublic class ActionGroupDemo extends SwarmImpl {
4 T+ B6 t5 N8 ` ScheduleImpl schedule;5 M3 h: X4 e* G8 x
ActionGroupImpl actionGroup;
3 U5 I" \! _) V g$ | ListImpl list;. K2 }3 h$ N0 {6 A! ~
char Id = 'a';
) L9 B4 @) Z' m# @7 E8 `# G# _$ I# ^5 K
ActionGroupDemo(Zone aZone) {
7 @8 Y$ s) F1 {; W7 }6 _. c& M super(aZone);" Z! ?( p1 a- ]2 S( m+ F# s1 |
list = new ListImpl(aZone);/ j5 V; r2 s% C+ y
swarmSetp();
$ O; w6 e: Z1 b; [3 U O& p actionGroup = new ActionGroupImpl(aZone);1 P9 P1 w! l9 a- d* ?$ }) _7 _
schedule = new ScheduleImpl(aZone);- l& ^! }" _ b9 g+ X
try {
) B" W6 Y3 ?4 [ Selector agentSel = new Selector(Agent.class, "agentStep", false);
; G j: O, K$ G$ Y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" |( d5 H9 i, D
9 `5 @( k4 W: y5 K# d! T) P
actionGroup.createActionForEach$message(list, agentSel);. R, |, g8 X% x7 L) e. D3 {
actionGroup.createActionTo$message(this, swarmSel);
, h. n+ Y0 f2 y. z" G# Z3 J schedule.at$createAction(0, actionGroup);0 D; N6 G# q% A8 k; n
schedule.at$createAction(1, actionGroup);
7 h2 W+ r! I$ g+ A/ P1 W schedule.at$createAction(2, actionGroup);4 Q, g; Y# B: h4 O
' S5 z2 T" x1 z7 @3 p! p* w } catch (Exception e) {3 t/ M3 s0 a( l, y
e.printStackTrace(System.err);
1 o) p/ J7 O4 z* \6 b //System.out.println(e);
0 O8 K3 G8 J: Z' z2 L2 { System.exit(1);! m& z$ U G/ A- C
}
' H) ` U; H4 s9 ]# y* M# d3 m; [
4 V U C9 _! u& A3 E# Q
( U6 h$ L2 ~ @7 h) l- b }2 y7 U( s( g) h
# ^4 ~+ ?3 u) x: X+ U private void swarmSetp() {
. R# l. D: u: ?3 M, \. b* @ list.addLast(new Agent(Id));, V$ Y. Q& V. Q$ i/ L0 T
Id++;9 e* P' s i4 u$ d0 u3 u% Q0 h- p
}/ x5 I2 K# a: t: r Z k
8 _9 n ] M: C2 f) S6 Z public Activity activateIn(Swarm context) {9 \# @ y0 C/ |' I
super.activateIn(context);
/ |! T/ ~$ ~. _# ]1 E schedule.activateIn(this);& ?" B, T0 a! N9 h+ E4 a
return getActivity();* s6 C; d& \8 q; C
}
' {: o. [* A* J3 a
: X* ]* Z/ B- d public static void main(String[] args) {+ L3 D9 h. Z: F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* U4 n5 }, P4 g) S" k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* p6 h5 R" V3 c5 W1 Y4 g% q9 T' g$ w
swarms.buildObjects();
: M) U% ^2 m$ q swarms.buildActions();
( H% c) l$ u. a0 {4 H swarms.activateIn(null).run();9 A- p& F0 z3 R0 {/ X* f
}8 Z# ?7 Q; {5 ~& I {
8 |4 @/ h2 e9 X% `8 V' ^7 V
} |
|