|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 A* ~. d* M3 x% g
+ j3 e9 [/ U- ]( h) X- k3 Y" d5 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 ` ~+ w) V- }4 r: m- T) O( v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ f5 ]6 u# u. P9 Q' Z& u8 }! }swarm.SignatureNotFoundException! x; q4 u f( L, B' l4 [
at swarm.Selector.<init>(Selector.java:76)
4 ?% S& j' s7 w0 `& Z* A' U" y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! H6 t) f2 j E. r at ActionGroupDemo.main(ActionGroupDemo.java:67)! ?# Z: M( m3 [ o* h, L
5 j$ m( [# J) G! D+ E5 X/ u- |" _
import swarm.objectbase.SwarmImpl;5 V% ~7 x# q( `
import swarm.objectbase.Swarm;3 c* m6 T: n; |& A+ f# y, l) l
import swarm.activity.ScheduleImpl;
: b6 V' k9 E; H% I: K, E! fimport swarm.activity.Activity;
% E3 X6 T- y9 [. \2 G3 c8 U. }$ k* iimport swarm.activity.ActionGroupImpl;' E1 T) K$ D* b, V0 ^* P. Z
import swarm.collections.ListImpl;# g3 {1 ]. g: w
import swarm.defobj.Zone; 2 w: m) e) B6 Y, r3 G4 @4 x _3 g
import swarm.Globals;6 H6 |* u7 k+ U/ r9 }! ^0 p2 N
import swarm.Selector;# M' D: W. Y+ F. @
import swarm.activity.ActionGroup; 0 _2 N, t7 {1 F' Y$ n; e! e0 ?
class Agent {
; k6 u- _$ g! s8 b0 o char id;2 q$ h% m/ z I6 }
' ?5 c: F( }. p/ q Agent(char id) {
9 m) e4 T" J Q/ E9 r this.id = id;% p7 ?- L& x! I
}
: m, F$ H* b! F5 [% B, g. V1 M6 W% f" c j1 _
public void agentStep() {
^" A, x; X1 A System.out.println(id + ":" + Globals.env.getCurrentTime());7 x0 m" b o2 _9 [
}. n! M6 }$ {8 `8 |1 @: B
}
) K8 x' Q8 B8 b: Z2 \; L
: d& B# [; m% c* tpublic class ActionGroupDemo extends SwarmImpl {; c3 w, l/ H' c B; {
ScheduleImpl schedule;5 U( }8 q, O! J/ k
ActionGroupImpl actionGroup; u. J% u: ^5 z; H G" V% }
ListImpl list;9 ]6 {( D) i; Z+ {$ f4 `
char Id = 'a';3 B, ?6 a8 {4 W; ^5 K
8 \! j: R8 @6 D1 W
ActionGroupDemo(Zone aZone) {
8 V. K" @) `! x; j: z( w j super(aZone);+ J3 v" E" t3 \- D8 L. S1 A
list = new ListImpl(aZone);
( I8 l( o0 c* Y7 e6 f swarmSetp();" Z4 e! y4 c6 _/ s
actionGroup = new ActionGroupImpl(aZone);; S7 ?4 `& d' s8 Y7 {9 |4 R
schedule = new ScheduleImpl(aZone);! g" y- c8 O. q, J
try {# \7 w8 s; m& L9 o1 Y% k8 p- i& L# P3 c
Selector agentSel = new Selector(Agent.class, "agentStep", false);
b& u6 X4 {6 |/ [) F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. A z) f' w! d' b2 G9 a: x/ o, d2 \
2 v4 f& I L P8 a( n
actionGroup.createActionForEach$message(list, agentSel);2 M; \) X0 v F) l
actionGroup.createActionTo$message(this, swarmSel);) ]3 q @3 x1 |. t3 t/ A0 {
schedule.at$createAction(0, actionGroup);' t" v+ w$ E. ~( N3 q. e* ?3 [3 h+ ?9 Z
schedule.at$createAction(1, actionGroup);
, r( p) _0 ]! K0 g4 r' J3 Z schedule.at$createAction(2, actionGroup);
/ v2 r" T) r1 s2 s# m' {4 o! X% i5 E! W
} catch (Exception e) {
& z; Y Q5 |: H: j: w# E e.printStackTrace(System.err);
/ m: I [, v) y, ^0 n g //System.out.println(e);3 P1 B% Y' U g1 R7 P- B
System.exit(1);8 s& P K; ^# E2 U
}
; O1 K# G2 R1 R; W l% ]
/ p7 M' G, A# i4 E5 z! S8 {( f1 M& @. a% q
}
" z' H9 M7 s \* g
: Z; i% @6 D4 @% Y. d& ? private void swarmSetp() {1 D& X' Z2 D( D$ y/ m3 I+ {
list.addLast(new Agent(Id));. \; ^; L3 S6 J' x" U: F% K
Id++;! r! ~+ O/ @6 {1 B/ F- D+ [ p
}
0 J! z" r7 i2 I( d/ G
5 {+ n. w% u/ b. Q% B0 E- o public Activity activateIn(Swarm context) {
4 y. U) G- c" y super.activateIn(context);
" t+ W: s5 {4 k3 H schedule.activateIn(this);
1 Z( r, E- V8 M9 x+ w; l2 v0 p1 R return getActivity();8 i3 I: y9 S( f# f3 ~' I
}3 p8 c @5 a. z P% g
; ~, \) x2 [( x public static void main(String[] args) {
2 A1 P: A5 f l; z! D Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 x" r* ~8 ?- D7 I# ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! o/ |/ S4 X& Y
swarms.buildObjects();6 X8 g1 S3 N! J0 v# W; i4 \
swarms.buildActions();$ e$ l+ K, Z- ?
swarms.activateIn(null).run();
0 C9 e5 a8 R% _8 l }$ h- G! A) ^+ P0 m7 [
[: C; H7 ~2 n6 s8 O} |
|