|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 H) y" M5 s; b3 u
; m$ c3 t% G! A, F2 z2 V: g) W( c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# P' O" B4 t9 g W8 [/ Y$ L, I; I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 S, t+ \* h8 t
swarm.SignatureNotFoundException& a* D- W; C! r4 ^
at swarm.Selector.<init>(Selector.java:76)
* m! X2 `) k5 Z+ [; f; A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 n" J2 {- ~: O8 C7 D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 o: _7 j( m) |9 s! B9 o8 v) a8 Y6 ^; D+ O
4 h5 P% J9 l3 N L. \( eimport swarm.objectbase.SwarmImpl; L* x, Z3 g* ~& w: L
import swarm.objectbase.Swarm;
, C9 _" o/ h; T( V' Y# t* Z' Kimport swarm.activity.ScheduleImpl;+ i6 S( e2 t9 }! W
import swarm.activity.Activity;
7 w$ F2 O# K3 s+ r; _4 C" `import swarm.activity.ActionGroupImpl;, c4 N. Z/ \% g; ?9 ?
import swarm.collections.ListImpl;
9 d7 n% X# a) @' b: z; u; s1 [import swarm.defobj.Zone; 8 H# R! k8 z2 U. o6 _
import swarm.Globals; b% U' d& E$ j/ q- s
import swarm.Selector;1 I- ~7 ^; }/ X- t% p
import swarm.activity.ActionGroup;
* ~$ b' u- T( S6 N# _. ~class Agent {
2 a2 ~7 D8 U C n) t' O char id;( X$ c3 {9 M6 B
& T' D9 |' k) M: I; t4 [6 x4 ]* J Agent(char id) {
, a# m# T' J/ C* I6 v* Y this.id = id;$ m$ P S w( m" B, @0 ^: o& W% P8 t
}
$ K" A; }/ F+ \/ j1 ^
" F8 x0 d) f3 u! `3 [$ Q$ [, u public void agentStep() {( s; b5 q+ R/ c/ b! P3 z2 }
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 j" h" P" \4 O$ H6 Q. i1 [4 V }3 o3 z$ Y& o; ^
}
& M; I1 w1 K) r9 b1 l& R4 N# ^( q" \* [0 N/ v6 i2 |
public class ActionGroupDemo extends SwarmImpl {! u n0 e+ g7 ?' H
ScheduleImpl schedule;' d& z2 a" l- u: ~
ActionGroupImpl actionGroup;
y: h; C: _; w! I! E: _7 K% T$ T ListImpl list;/ c- u$ z& g6 q
char Id = 'a';
+ H; A. U5 F' u" q# J/ W4 X, S. C- L* W
ActionGroupDemo(Zone aZone) {$ J$ Q2 f! I) \
super(aZone);* N- ]6 m% Z% |- C( l2 o% d* q
list = new ListImpl(aZone);
- I0 A6 Q5 f, n, F6 W% T9 b( M swarmSetp();5 l# A9 f8 u1 ~* v( M/ K0 P
actionGroup = new ActionGroupImpl(aZone);
2 @2 \1 F g. a- a3 v schedule = new ScheduleImpl(aZone);
( [* q* i5 A1 ]& w! D try {
- e4 E7 d" Z) b6 m Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ n0 x0 t7 ~. Q: n! U Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' Q0 F* k/ r X8 {
( p E8 {5 B; _8 a2 T8 p9 w+ _ actionGroup.createActionForEach$message(list, agentSel);
/ ? C6 M2 r- i: B' f* m# r6 [ actionGroup.createActionTo$message(this, swarmSel);( a: K2 F; v6 `6 A8 U' Q
schedule.at$createAction(0, actionGroup);
e3 \" E/ t+ Y. | schedule.at$createAction(1, actionGroup);
" H) V) i6 _: R2 u& \0 ` schedule.at$createAction(2, actionGroup);. ?2 [4 U$ N9 O/ Y; {( ?! y
% W; w! ~" u$ U0 `
} catch (Exception e) {5 q/ ` d/ k: J R; L
e.printStackTrace(System.err);
' M0 g. O; G4 c# l( M7 l //System.out.println(e);+ ^6 X# k, H8 o7 r* l
System.exit(1);
! T, P' T6 t& t( H( T$ e d }
9 l/ t4 W9 T, |* P
. W! c8 x4 q c O' i4 {6 F7 v
8 S5 W( B3 \6 s- Z! j }
5 @; G9 G5 T5 q5 @1 X/ H/ q5 [- y' V# G9 S; b) ~
private void swarmSetp() {
+ g4 ]. Y# H/ x. Q, q list.addLast(new Agent(Id));
5 A& w# K- S+ w4 l; i0 y6 x# j) P Id++;
2 j- W& |) D, M2 V }
0 P$ [9 S% c! p1 D; \) t6 D' ]
public Activity activateIn(Swarm context) {
( A% I9 C! H1 f: u5 ~ F1 B) } super.activateIn(context);
! H& ?& ^$ U Z( u+ c schedule.activateIn(this);
+ f, ~3 A9 f5 e( C4 p return getActivity();$ N; t; N5 z' I( a( m# s- z
}
9 H2 o3 U- Z f9 R$ i
( n' i; |4 b$ h# V7 E2 i" T public static void main(String[] args) {' F- w4 U: D6 k5 {
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, t+ ^ ?5 e1 l# ^6 G! e7 T Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. b$ _0 ], C8 M4 S
swarms.buildObjects();
/ \6 h/ e) \9 K! ? swarms.buildActions();
) p- Q' ~# ~5 ?, d. B7 E swarms.activateIn(null).run();0 f) {# c& W2 l. c- a+ X9 w6 f
}5 P0 u% `2 L" J+ ^
/ Y) v# M8 @1 V: L) f4 B1 w0 Z, d1 A0 ^} |
|