|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # D# u( V. ^4 Z$ z' z
9 w0 q e3 [4 ?& L- I1 H' ^6 F4 f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 S+ j2 T/ ^) z* C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) G# W" F9 {7 v3 A0 V
swarm.SignatureNotFoundException
! N7 o! a. }) v$ Y) r8 y) u# M' l at swarm.Selector.<init>(Selector.java:76)0 \5 w5 Z9 X6 q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* U* f9 m5 F8 p- b at ActionGroupDemo.main(ActionGroupDemo.java:67)$ h& @7 X4 c* h4 h
( ^: W# W/ f% I# A2 Z& M- P
/ H" }( a# V2 o+ y6 M6 L5 t
import swarm.objectbase.SwarmImpl;1 [; `% Y, I3 @4 K4 w& S
import swarm.objectbase.Swarm;
+ }' P% X9 e& Y Q, oimport swarm.activity.ScheduleImpl;
3 {# G2 L3 _# p- r) Pimport swarm.activity.Activity;
7 M4 ?3 y+ G& E8 limport swarm.activity.ActionGroupImpl;& c7 C* F* s8 h# Y
import swarm.collections.ListImpl;
; k+ ]# j+ J6 s* l8 A6 Ximport swarm.defobj.Zone;
6 H5 y% H# o6 I2 |4 q9 pimport swarm.Globals;
5 P8 `% |9 t" D# b8 \import swarm.Selector;* ^+ {; ?+ o% q9 b, j0 {
import swarm.activity.ActionGroup;
* q% n& t- A9 ]+ v! t2 }' Qclass Agent {
. L: U' V. u9 L m# ] ~ char id;0 V8 Q4 L3 B9 k. K
5 b& ?+ M/ a' Z9 z# u2 n% U
Agent(char id) {+ A" i# v! v. E8 l0 D* C
this.id = id;0 D5 b) k& H" W$ q1 c, ]7 ]1 L
}
+ [: A6 w6 }+ U2 p1 o9 f! J: m1 t% W6 \7 \9 d' H
public void agentStep() { i( t* q" s) z
System.out.println(id + ":" + Globals.env.getCurrentTime());
, c. J- g) }! i }# r; T5 x. x8 Z, x' j
}
+ \* n) g1 [3 R7 H# ~! k, T' R4 e! W8 p3 _: G+ q
public class ActionGroupDemo extends SwarmImpl {6 ^' o, }9 K! T. t& P* _
ScheduleImpl schedule;
8 N( _, R- x) _2 O1 }# _0 n$ s' G2 R ActionGroupImpl actionGroup;
3 z" T# [$ T5 K: s7 D ListImpl list;
* `4 b! m {2 Z3 D) _" B char Id = 'a';8 h" N4 s/ S0 `3 f) L' Z- Y: {
: x( d. I( j9 T; U& \6 _4 @
ActionGroupDemo(Zone aZone) {, ?& g" }% F- u/ [0 j
super(aZone);& B6 s5 T2 _2 n$ o- o# Y# h
list = new ListImpl(aZone);/ \! P# u: \4 {: q! T
swarmSetp();
4 F1 N7 I9 s! j5 o' Q0 K% ? actionGroup = new ActionGroupImpl(aZone);7 M9 g: v3 L# A7 k: ^. i
schedule = new ScheduleImpl(aZone);" `( E4 b' E6 u$ ~) ^! w% ?# s, R
try {7 G( J, \) E' T" l' e/ }. s5 [1 J
Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ t! d7 W7 b2 _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! r8 e( t- y- e* C7 f7 b2 S
; ]4 o3 S7 i9 D6 H7 X7 \ actionGroup.createActionForEach$message(list, agentSel);
' b( l) Z) \, v; G0 C actionGroup.createActionTo$message(this, swarmSel);5 d0 Z, m- }4 \, @9 |2 Q6 ]
schedule.at$createAction(0, actionGroup);% L* |5 U9 o& n5 m5 c4 [ t! L- b1 Z
schedule.at$createAction(1, actionGroup);7 n; w% n% t9 r( H: x n
schedule.at$createAction(2, actionGroup);
, b; J! p$ C2 j' u
3 a6 b3 J8 K( N$ y$ Y' K } catch (Exception e) {. Q2 p: W" V* N8 |3 N& z
e.printStackTrace(System.err);0 C' l7 E9 q2 D6 F" X
//System.out.println(e);
- a V% x6 w+ k; X3 n8 a/ t& ] System.exit(1);
3 X& q4 g# i- M& q8 L! `3 n }
2 d! k: C! ~; j" W* k* {& v; [7 b0 q) _, Y, B, P6 U( k( q
' a' n8 m% A8 b9 D9 W! c% o- ? }2 x2 h. W" [, T( @* g0 l# r$ e
6 q" w/ K* E2 l. Z7 y/ w
private void swarmSetp() {% e7 d6 m/ G, A5 w2 ?3 \- W7 |& `
list.addLast(new Agent(Id));
7 g9 g) \' [: ]4 n) u" Q. h Id++;+ m& F& c" K7 P- a4 P( r" y
}
1 x, Q- y! ~) _3 E" s3 \
: g" Y8 }* L4 F+ _0 H3 Z public Activity activateIn(Swarm context) {- S& y! b' F& }- {$ H
super.activateIn(context);3 o& F$ }' m7 W
schedule.activateIn(this);
T$ h# q4 `' \, `6 Z return getActivity();
! U; n5 {/ C% ^# I }
0 M1 n6 {( R: D* \5 F/ G, B: X* x
6 l% {# v& Y! e X public static void main(String[] args) {, ]$ |3 `$ @3 u( d+ u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ K, K( x9 Z9 n8 n3 L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 |, T9 Z4 x& _4 k1 X
swarms.buildObjects();4 Y1 I; |; p2 Q# s3 C0 s( j2 }
swarms.buildActions();
* W, w. I+ r+ q0 }) } swarms.activateIn(null).run();
! x1 z" F+ d4 W# c L }! _5 |% F9 A; F
2 R f: u1 E) O. z
} |
|