|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 G$ W& t+ V5 @2 @( R" r/ T& k* ]" M- }( r6 X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 ^# t2 ]; A& T% J/ x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 K+ f0 _8 }# u1 L9 [2 l
swarm.SignatureNotFoundException
+ y1 G' U7 n) g& @ at swarm.Selector.<init>(Selector.java:76)
# _7 t- h! O) ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 z- `: d5 r8 J
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ F5 e' H4 {2 d! a1 V* S9 X$ P% {" Q I0 N: K1 g! F3 n
' M! ?1 G3 t. p D2 r& limport swarm.objectbase.SwarmImpl;$ H/ \) T, K$ I/ F
import swarm.objectbase.Swarm;$ U5 z r) k: l4 Y4 U% T
import swarm.activity.ScheduleImpl;+ X' E+ a- O" T* F
import swarm.activity.Activity;$ G1 }9 E: q+ H" J1 d5 N& W
import swarm.activity.ActionGroupImpl;% N+ V% O+ V6 V) u& H% A
import swarm.collections.ListImpl;4 n& h- Q& \% H/ C$ a
import swarm.defobj.Zone;
& V) c$ J' `! Simport swarm.Globals;, f5 o& O( P2 E K& b+ e
import swarm.Selector;
4 j+ i8 T4 ^" V. bimport swarm.activity.ActionGroup; " w' z8 [7 D0 z2 x# K4 x! t: n
class Agent {
5 c, Y. i8 O1 {( | N char id;# Q$ ~4 L. m# D/ [0 s; f
8 A8 k* Q0 a; h+ ~' B8 z Agent(char id) {& e; _) {: R# f
this.id = id;
1 T2 ^7 c4 G9 F5 _$ s4 _ }: N) C7 s2 W) e2 u& \
( B& D1 [* V8 ~* p0 X/ v2 D
public void agentStep() {, X9 c* }. ^; A; n$ Q
System.out.println(id + ":" + Globals.env.getCurrentTime());
, \: c; q/ e- I1 b9 ~% Q& ` }8 x1 m7 W. \) a
}
4 R& b# I; V! R- b3 n; e9 h, s, L9 B7 ^' u. B2 ~
public class ActionGroupDemo extends SwarmImpl {: {3 P# ]; c4 ]% m6 ]
ScheduleImpl schedule;$ i& \3 E6 w8 R
ActionGroupImpl actionGroup;- a4 m1 [6 w% Z5 }9 s/ C- w
ListImpl list;0 n, D6 e0 z" g4 ]3 Q* E" j" N
char Id = 'a';
% d6 X5 k8 I% v6 H- L# W$ [
& s' G7 [2 p) s9 D: Y9 R3 E# Y0 t" l ActionGroupDemo(Zone aZone) {
$ C. @- ~) _, d: \5 V' I super(aZone);
5 C- M! I. ?) m$ I" T: [/ R list = new ListImpl(aZone);; k/ o0 D& j+ n: o- p
swarmSetp();- r& B/ N' v2 o" K0 g! y
actionGroup = new ActionGroupImpl(aZone);
1 c: W4 c3 u% }3 y/ u; |% V, H! D schedule = new ScheduleImpl(aZone);
/ c' O. \) A, y* d5 V0 @- R- r try {
: p) J# P9 D/ f1 r Selector agentSel = new Selector(Agent.class, "agentStep", false);4 g+ J& ?; l0 C; J1 D" _- e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% @* Z+ Y- F3 G. s0 S
2 t3 ?2 G: |/ l
actionGroup.createActionForEach$message(list, agentSel);
4 K, m8 p* U0 v& O7 u. ? actionGroup.createActionTo$message(this, swarmSel);+ r* ]! Z1 K A0 {
schedule.at$createAction(0, actionGroup);
4 c' q i) b% ~' V% z schedule.at$createAction(1, actionGroup);' r7 q5 [1 r7 E. S6 A6 ^, i5 \
schedule.at$createAction(2, actionGroup);
+ a4 Z1 u- G `1 l% }( H- o' G3 C; }1 ~ L8 }0 N# h
} catch (Exception e) {
/ f0 }" s' g/ n- u e.printStackTrace(System.err);
d, y" ]3 q* d1 X6 o9 N, A5 l# s //System.out.println(e);
! D" b: _- a4 ], f) J System.exit(1);
9 Y' g/ c8 F# @! K; }6 A- i }
2 _% {# I2 G K* r% A: {
: ~) @. X( S5 z5 d, W. y1 ` ]" h8 a( h. T
}+ [) C$ ^" I o! W
& M2 s h& {- r" i
private void swarmSetp() {
3 Y) J7 G+ b7 D( V, T: ^ list.addLast(new Agent(Id));7 x% J' z( C/ C
Id++;' R9 ~8 R: G5 }7 y- ^! t# c4 d+ S
}
1 `3 a2 ?$ r" M! v/ R" p# D9 q; J) T5 n1 W% {3 i x# v
public Activity activateIn(Swarm context) {
3 u* s$ C o1 A- i super.activateIn(context);& z1 L# ]7 I; q9 Z3 _5 X
schedule.activateIn(this);
9 Z' X1 A' N8 Q& ^ return getActivity();5 u2 P# k+ q. z& ?) d
}
8 f. b: @4 T/ r7 q9 Z, t N# `2 P6 b4 `5 i Z' z9 D
public static void main(String[] args) {
0 m& i I3 z$ y+ V1 R Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 G* E9 ]( X1 u8 E" a# z% |# M
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# O' D6 l( E5 L swarms.buildObjects();
& o+ R3 ~: W4 y( g" \" D' t swarms.buildActions();* v3 s I8 |3 Q. v
swarms.activateIn(null).run();
4 o8 `9 O+ n: ] }: o) }3 m7 C; a; i
& y' J# a' @: _+ v$ X$ F% l, n; W
} |
|