|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 o, U. I6 R! j5 @. E) q- k/ G& F$ z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 ~1 z; X) M. r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 Y2 f* h0 D1 Tswarm.SignatureNotFoundException$ ^4 k/ j- Z( Y: Y8 L. {4 ], X
at swarm.Selector.<init>(Selector.java:76)
+ m2 E6 d | V- F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ a% u4 u( z& {# h- V! ~- v7 m at ActionGroupDemo.main(ActionGroupDemo.java:67)' L" P/ O4 H4 M3 Q0 `" E
9 n2 o* m v* r7 o
. A5 L! D/ U1 x n5 {* |9 S4 vimport swarm.objectbase.SwarmImpl;) W7 m8 W( Y6 B# }; v* s6 p
import swarm.objectbase.Swarm;0 d( z d1 {! J& C" F7 P
import swarm.activity.ScheduleImpl;+ [' W: U: c6 a$ ^
import swarm.activity.Activity;
/ Q, Y, C/ N" N+ |" ` M" I* Fimport swarm.activity.ActionGroupImpl;
" J' U4 g/ x. |& P4 c; [3 O) Dimport swarm.collections.ListImpl;2 s2 s& M5 u( v5 w1 z& l7 D( U
import swarm.defobj.Zone; + F7 N* G7 P7 ]* X
import swarm.Globals;
( z/ @4 d( o; C* V5 g! `import swarm.Selector;) A- [: w/ m- {; A
import swarm.activity.ActionGroup; - z6 F9 O6 {5 g, J
class Agent {3 `0 ?! D, l$ G _2 y3 q4 {
char id;
! U5 X/ |* A& w
' x: r* j6 c! X4 R; z4 I3 q7 S7 N' A Agent(char id) {7 x: N+ U6 P; V9 V( B
this.id = id;
$ N! S1 R) d+ q; ]1 B7 X' g }
1 D) j( K! d9 q6 Q! S- ^$ Q S: A. S, o% i" q% J J$ d" w& a$ j
public void agentStep() {' }( @" Z2 y) X. u
System.out.println(id + ":" + Globals.env.getCurrentTime());( x) i; i) C" W7 l& M5 o
}9 ], @1 `& F4 ]2 R8 d$ {8 U
}* a% I' `! a5 E7 C3 F
3 l+ L5 t3 e0 l" m& q. rpublic class ActionGroupDemo extends SwarmImpl {
) n3 p- N8 c5 {2 p" E ScheduleImpl schedule;7 b' k& V8 o b) \0 ^9 ]7 \: j
ActionGroupImpl actionGroup;: C" e; D3 j( N3 I0 c" Z6 p
ListImpl list;
, f7 h' L5 S3 l: c. x. n. C char Id = 'a';
0 `$ h/ X0 d! i7 C" v0 F4 ^. \0 Q& n# }/ y) i. d
ActionGroupDemo(Zone aZone) {2 X" H/ ]" I; M' r. C
super(aZone);1 \) ^* @; f* \2 ^3 m) ~; s
list = new ListImpl(aZone);; j1 J; e: {/ v. B
swarmSetp();4 w9 f; W, M+ e2 n4 n- ^
actionGroup = new ActionGroupImpl(aZone);6 j4 c( b& y% n T; V4 E; T
schedule = new ScheduleImpl(aZone);
. c* ?, U5 h( \. Q3 L" f7 b try {
: r8 {5 H8 K, K: |3 K Selector agentSel = new Selector(Agent.class, "agentStep", false);1 L, f; ^, g- @% d! m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- k4 A2 u1 Y2 l* F
# ~( e, z6 M( Q actionGroup.createActionForEach$message(list, agentSel);' [, [+ z/ m, P' |
actionGroup.createActionTo$message(this, swarmSel);. C7 c4 V- Y& m5 u, m; ~5 C
schedule.at$createAction(0, actionGroup);
0 z0 X9 w2 {& U& r# {- R; } schedule.at$createAction(1, actionGroup);
, n# K5 [- C4 {9 i6 A9 C5 q schedule.at$createAction(2, actionGroup);" K6 R4 \' x# L2 s
! R5 V4 t4 i3 m+ o& \! Z } catch (Exception e) {
$ O8 r: j% p# u. L5 e; d e.printStackTrace(System.err);9 Z' s# S- R. F5 `) X
//System.out.println(e);
! b5 `- |& ~+ e, ~ M$ n System.exit(1);+ R+ m! o4 J( f/ N% b
}/ o. z* t1 W5 M) _
5 r- R! q% z/ y0 s! u
' z; F3 V" F% Z$ @! H- q- b }7 O# X; x3 i5 i+ i8 I
5 ~# _4 I& o( s private void swarmSetp() {5 K2 i. I1 i' e! p6 w K& w6 n
list.addLast(new Agent(Id));
# \2 l$ T6 H0 ~ Id++;
+ ?9 U( A# v1 [3 S( ` }* v6 x# r: v- X' L( J7 q; V% Q
) k: n1 D+ N; _8 U R9 E* x N
public Activity activateIn(Swarm context) {
' D: x! h! _5 \ super.activateIn(context);
) {- H+ S- Z' G8 H schedule.activateIn(this);! q3 K) K0 u7 w, {- a5 e9 Z3 X
return getActivity();5 t4 I' d; C: ~* v: Y# @
}
3 \2 M" H) g: H0 C6 y6 v$ `/ h9 h, C5 A) u3 _
public static void main(String[] args) {* A5 I2 M* l: ?, |2 w! J
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& J. ~3 E& O& I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" V; R, {) @- N7 e& g# T) m
swarms.buildObjects();
% E1 a9 m% W& s) R, K( w4 g8 s swarms.buildActions();3 Y, Z# h0 r* Z
swarms.activateIn(null).run();
T5 [, T- y: q+ D; U }
% h# f* V8 a% `9 n+ j5 g, r J9 S) }: m. h8 S9 K* K3 h# c
} |
|