|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' |& ]# Y. f% p3 t
% U, S5 z+ h4 Y0 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 w" M9 T9 a1 x4 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( u0 k+ L7 ]0 o6 }% \4 `
swarm.SignatureNotFoundException. v3 J2 v+ |( u+ C1 v3 J/ p
at swarm.Selector.<init>(Selector.java:76)& {* v: ~" f0 C3 [" O8 \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# q- P+ a" m2 Q3 q4 A4 F at ActionGroupDemo.main(ActionGroupDemo.java:67)& c. j- K' O+ w$ z, z% _( J
& q9 ]. K: C: g& @9 q# q+ y. |% `! u, [) F/ i
import swarm.objectbase.SwarmImpl;
6 Z. P6 N* E% X5 L' Fimport swarm.objectbase.Swarm;$ z- d& o; _7 y
import swarm.activity.ScheduleImpl;
) D- J4 W" F/ |* x) D+ h7 zimport swarm.activity.Activity;
; Z1 }# r7 h& a' B/ N1 A$ D0 Limport swarm.activity.ActionGroupImpl;
^0 h0 Q) H$ kimport swarm.collections.ListImpl;+ {( c: h: p( B
import swarm.defobj.Zone; , O n- R5 w( `; t" M. Y
import swarm.Globals;
" d" T/ t& u- k) Simport swarm.Selector;
, L( R+ T8 e }1 nimport swarm.activity.ActionGroup; 9 x" e# n8 Z0 @
class Agent {
. n# x4 R3 |" D! L! M( | char id;
* G* D2 T8 e, P, T, \5 W2 N' P' y4 L& p w! b4 F+ o
Agent(char id) {
e7 \0 A" S! v2 ^3 Q this.id = id;% b9 O- }0 d2 e! w% {
}' N) G7 Y1 F+ i. p( a% G
. l1 F1 c+ C/ X- O4 _ public void agentStep() {
( K8 N4 }6 {8 }+ I+ V" e System.out.println(id + ":" + Globals.env.getCurrentTime());
& m9 M/ f W" ~6 f }
+ q" q6 \" F1 v4 @% A}
0 f9 T! o4 j" e/ c# t7 u, ?7 r$ v) ?3 l. p2 ]
public class ActionGroupDemo extends SwarmImpl {
2 ?! O2 l2 B: z# p' A) G; K ScheduleImpl schedule;. r: Y. \( h' k( I, A8 p
ActionGroupImpl actionGroup;
# f, p2 z& F# N! g1 ?, k ListImpl list;2 V% p" `8 _* N! l4 g
char Id = 'a';. H8 h) m! K& b
+ V, G) P! \' Z
ActionGroupDemo(Zone aZone) {5 _2 ^# l! i: @: U
super(aZone);' i* ]1 e, N0 ~/ o% _
list = new ListImpl(aZone);/ a1 |& P) ]+ y9 J- Z9 p; W8 t2 T) M7 H
swarmSetp();" I- M: R* J7 f# ^/ ~6 M# G
actionGroup = new ActionGroupImpl(aZone);
$ q; U$ s( `! V$ s" N schedule = new ScheduleImpl(aZone);# V7 x1 P) j$ Q7 G" \7 A6 u
try {
1 P, s8 P: {' T! n/ L! b; v Selector agentSel = new Selector(Agent.class, "agentStep", false);0 m" [9 o9 B1 ~ m& ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" p: z$ ^7 ~7 |% e7 t) i
$ A: v) b$ D3 M
actionGroup.createActionForEach$message(list, agentSel);9 J+ B5 ^: `; z, [% P. K/ h- C' h8 O
actionGroup.createActionTo$message(this, swarmSel);
% o8 _4 l1 \! O4 [" k( { schedule.at$createAction(0, actionGroup);
" o8 x4 m) M+ Q/ f. L9 Y5 B schedule.at$createAction(1, actionGroup);2 f7 z, t0 d O1 W' Q
schedule.at$createAction(2, actionGroup);
% @1 H- b) X, ]3 B6 S5 a4 d/ p k9 d. m3 |
} catch (Exception e) {- b$ T8 G$ v5 u; U9 ^) a3 ]
e.printStackTrace(System.err);% {% z i, c3 E$ \8 H
//System.out.println(e);1 h+ q. ~3 f2 x
System.exit(1);! n6 i" K( q; Z/ v' }; k! {
}5 |0 C) D2 T. {' \4 G" B1 b9 d6 `" b
$ E4 L, X8 h% R
6 L/ I8 U; F$ G* d. ^
}
' Y0 k; n" z# J1 @( u# N k
% B# r& |2 P0 w private void swarmSetp() {
! y) o. r, y4 T& y) b- R! f( B list.addLast(new Agent(Id));
/ J* U# t+ y( a5 ?# `8 I7 M! L; o Id++; ?+ n: k+ f) a k* d" P, z
}
, w" k0 g0 p1 n5 ?1 V1 g4 r0 O2 w( W* b
public Activity activateIn(Swarm context) {
1 x) _3 T; i% U7 S3 h" P1 `( ? super.activateIn(context);
2 w% j% V- V) F8 ]/ p) F3 @' \ schedule.activateIn(this);5 _5 X- l8 c* N4 \3 E3 [. W
return getActivity();
2 ?6 u4 b0 h$ X( R5 a }* @0 E1 K) h+ P; w6 z
4 f. F1 F( Z0 S- E
public static void main(String[] args) { a$ \' Y' x6 e: Y( h# ^8 W* ^1 Y6 z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ ?' P$ f% }# Z- f0 d1 {! }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. K4 I2 F7 m6 X8 M3 |; U ` swarms.buildObjects();
& C- E, Z- x2 V8 h9 R( R swarms.buildActions();, r2 Y5 [" ?. a) ]; T" ?
swarms.activateIn(null).run();
6 F" ]9 P& ?" o) M, Z9 Z$ k) D }$ G/ Y( @& z; B! A2 @
7 m$ k/ `; N" J1 g
} |
|