|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) ^4 c% H% k$ E% O, u' i$ x& _4 P. v: L, C! [$ P) w; f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- T- ?3 e( f, d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 B- V. F8 v! F1 l
swarm.SignatureNotFoundException
7 W4 I+ M: Q4 Q0 S$ n at swarm.Selector.<init>(Selector.java:76)
3 w% B/ ]# `9 n& j0 V at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ ~, y( B* `3 f at ActionGroupDemo.main(ActionGroupDemo.java:67)
- z$ r. I$ z5 j: e- a1 g h/ C0 K. a+ N. n: B
1 }: y% \3 C# b" P/ G
import swarm.objectbase.SwarmImpl;
, t- ?" X5 @" h/ ?' i3 P# j5 Simport swarm.objectbase.Swarm;
! l, a! N8 A1 Y4 Y, \0 _% ]import swarm.activity.ScheduleImpl;
& I5 p( N, |- ]1 q" S: Nimport swarm.activity.Activity;
- h) q Z9 k; O/ k q9 Kimport swarm.activity.ActionGroupImpl;) S) \! Y! L0 h- q* f+ j
import swarm.collections.ListImpl;6 h5 v# I7 b! } l8 o4 g
import swarm.defobj.Zone; . C0 [( G% o" g" Y- \3 w2 J0 o
import swarm.Globals;
4 J5 h/ p9 e; t+ O; P4 fimport swarm.Selector;1 p% [- C1 o9 B/ e1 A
import swarm.activity.ActionGroup;
0 F& P6 f1 O# U* u( z5 x6 ]class Agent {% t. f X) a# H. R, r& }
char id;
+ q5 M5 T% Y+ d" }- f
- |. v; z9 r& f3 V; D% A Agent(char id) {
1 X) }3 Z% S( q% e* R4 \: R( y this.id = id;
8 p& n, C' {# K }8 Q- v/ D4 G. E: N7 ^3 s
* A, m! Y i) H5 }9 d! F) F
public void agentStep() {9 k) q! q, r; D9 A7 v7 `' E% |
System.out.println(id + ":" + Globals.env.getCurrentTime());( t3 M1 `: ]/ b
}8 r" B5 p" b( J
}
# V7 X. k0 G y$ K* L9 y" r8 H3 s& V" ?3 G7 N4 h# @, W s- d
public class ActionGroupDemo extends SwarmImpl {+ s- R; h) K8 p ]
ScheduleImpl schedule;9 s, s" P! b6 I' L
ActionGroupImpl actionGroup;7 P8 R4 h3 @( O6 s" u4 w
ListImpl list;4 I. V/ W. @- e0 x- Z) K. C
char Id = 'a';
9 ~ b4 q/ n+ g* Z1 ]$ l- H# w: C, o# q; L7 s
ActionGroupDemo(Zone aZone) {
! U( W% Z1 [% N" S( L) W super(aZone);
; n0 C' T8 D; V% {) w list = new ListImpl(aZone);: L/ o' ?+ `5 c
swarmSetp();) {% y6 n! U2 P: b4 T- J9 c# x+ v
actionGroup = new ActionGroupImpl(aZone);+ w9 ]) C5 b, w* \6 x8 v
schedule = new ScheduleImpl(aZone);
3 P2 p- |* _# W' v, P try {
1 V. B @+ F- R9 v0 e2 q1 P1 T: A2 q Selector agentSel = new Selector(Agent.class, "agentStep", false);
! r* k1 r; Z7 B/ J( ?. N! ~ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) l g P p' ? `
2 d, ?; K$ N+ d7 [
actionGroup.createActionForEach$message(list, agentSel);! V0 h( j7 M5 @
actionGroup.createActionTo$message(this, swarmSel);8 h z. S# n; g
schedule.at$createAction(0, actionGroup);
' G1 I. ^ O6 i schedule.at$createAction(1, actionGroup);
, T) j4 B% I7 N, t9 `. T schedule.at$createAction(2, actionGroup); @' \" r" @5 q m
: e2 \( n- P- F8 { } catch (Exception e) {
* E& {8 a7 O/ x8 L% i e.printStackTrace(System.err);
- O L8 i- B$ v. d. n //System.out.println(e);
% L. ?5 P5 n% m# ? System.exit(1);: j m {( p4 H6 \9 t1 W
}
" R- U* t3 x1 t5 B. i5 q! B
' Y! X' _$ ~. G. H% w- |* ?. \& p$ |9 y' }! N
}
3 S# G8 e) L$ g: n e2 q w5 k, p; u' T$ B$ T2 G3 ] k1 B
private void swarmSetp() {
: D+ p9 C" C+ ^ list.addLast(new Agent(Id));
5 ?4 d4 Q; O, T- S Id++;
: j4 u/ W4 K0 f4 ^ }* q0 K/ c+ C5 {! a& I4 l1 O( a
]$ g7 S: z' Y
public Activity activateIn(Swarm context) { E# U" w$ ^# h t
super.activateIn(context);8 {. x: b( {+ Q2 d' g; H3 g T
schedule.activateIn(this);
0 [" P. @) Z/ P& t return getActivity();5 r3 H% N- `) ~, y' M
}% x3 y7 y! N0 q1 l8 N
4 j8 [$ y9 A. g public static void main(String[] args) {
! B- F6 u) \( f5 M! ~1 {) e2 y5 n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ `* F% @! D# g9 _0 ^1 v2 U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* W+ i" C r$ b4 @. G
swarms.buildObjects();/ I9 t3 e8 Y d
swarms.buildActions();1 ~; ~: F2 \3 G
swarms.activateIn(null).run();4 F% Z; \! _& Y/ b5 C" [
}
1 ?% U1 W2 e! h' N; I
' g5 H3 f# {+ `7 H* m} |
|