|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 }2 M. h u0 j9 |
4 x& ]) M$ A0 [& r4 Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 B/ w& i0 u' K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% Q6 s4 V% v) T% J
swarm.SignatureNotFoundException
7 p( Z7 F1 P9 W5 T# X at swarm.Selector.<init>(Selector.java:76)
+ J7 C. |: `; ]; G Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37) n$ f* R3 R) B( P7 o2 _
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 E. ]2 F: R7 q- t' g* _
* ^2 c* a7 A$ z1 R) V, K( g8 B) @ b) q: ?0 W3 G5 i
import swarm.objectbase.SwarmImpl;
, W, V A# i9 X, {8 r# h2 s, Bimport swarm.objectbase.Swarm;4 T. W- V. M7 V$ K- O; `
import swarm.activity.ScheduleImpl;
( ?7 q- J) J' h5 p1 H$ \import swarm.activity.Activity;
) s8 U! `9 J9 K+ U- e4 W" Bimport swarm.activity.ActionGroupImpl;) K" O h0 W' G% d
import swarm.collections.ListImpl;
; w$ k2 G1 Q' \4 z- v4 iimport swarm.defobj.Zone;
/ b1 @$ C: @8 }" Y9 ]import swarm.Globals;2 ~: {. g+ x7 @$ y l; Z
import swarm.Selector;
/ q8 }/ O- s1 @' F" g$ nimport swarm.activity.ActionGroup;
5 x: p0 q" r9 \3 n8 p8 ~+ ~class Agent {: D: Z8 p, n. A1 I8 I
char id;
0 w. N2 L; v9 \0 x2 u" _! ?3 q/ X$ W" H( m; t# r; N( R6 C
Agent(char id) {. `+ X2 S+ H7 a0 Q. b/ |
this.id = id;/ u7 K* k' `6 p8 S8 C$ N( D
}2 e( S8 i8 h4 {, ~
2 H j6 f: A! y7 N
public void agentStep() {# U5 t6 c _4 ^0 Q+ w% c
System.out.println(id + ":" + Globals.env.getCurrentTime());
: O W- |, m0 j! T9 m }+ K7 u/ D$ N4 ~3 ^
}$ a7 _" ?# |* Y3 A4 M
! ?7 d; z2 t8 P9 G' F* ^/ epublic class ActionGroupDemo extends SwarmImpl {
0 P. t8 Z" O. ]. q7 a; L! |. `+ X4 e! g ScheduleImpl schedule; l8 p2 l+ L& b+ p1 Z% v5 Q
ActionGroupImpl actionGroup;
* i$ a: q$ z: p$ p9 R( H) y3 x7 g ListImpl list;+ J* J7 O" C" Z1 c
char Id = 'a';
9 K) Y3 s% L; w7 z# D0 ]7 M
9 |) V9 x# p$ G ActionGroupDemo(Zone aZone) {
+ L; w; _! ?& a2 ? super(aZone);- P' ~) Q$ ?+ o. L% w$ J9 i
list = new ListImpl(aZone);
$ y. ]$ ~( [3 w7 r2 ^ swarmSetp();. k* ]" V- k) O/ Q9 {) {9 \3 V
actionGroup = new ActionGroupImpl(aZone);# a! W$ g5 `. c9 c6 Q6 R8 @
schedule = new ScheduleImpl(aZone);7 `/ ^4 ?8 T0 t
try {; t1 a, t! @. G6 t! T$ f
Selector agentSel = new Selector(Agent.class, "agentStep", false);4 V7 T; `' B3 X, ?- a7 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* q9 S1 }; Q$ X. a& _
8 ^6 B. Y8 s6 s3 O* Z- V; o2 ] actionGroup.createActionForEach$message(list, agentSel);7 B7 J2 G9 o, n5 _ j& g% U. H1 o
actionGroup.createActionTo$message(this, swarmSel);
3 G/ s) B( v- e. L; y schedule.at$createAction(0, actionGroup);# x, t% K e s+ O
schedule.at$createAction(1, actionGroup);
+ \2 X: M: l7 _; b1 K; H schedule.at$createAction(2, actionGroup);
?0 y Z4 T4 [! b/ p
9 z `' m4 e% C5 d* e } catch (Exception e) {
+ N. G: V5 B+ U a$ b e.printStackTrace(System.err);8 \6 }7 Y; ]( r1 {6 v
//System.out.println(e);
, C4 T4 N. k. S System.exit(1); {3 X! n9 s: l! `/ \; f
}
5 s# r6 V" w9 @* l% I( q( ^/ X+ T
- f3 [4 n* q: Q. Y. ]' H( c8 r" H+ O: z
' | u9 o! V# c/ E# w }
8 @% t' z7 }, I$ R" Y
6 z6 F: s+ t0 |8 Z" n: [5 \ private void swarmSetp() {
) u( f9 l0 V: Z3 K7 r& Z/ d3 z2 y list.addLast(new Agent(Id));
. Z4 Q+ ?) V! J& r7 \ Id++;8 k1 u7 n9 Q: U' d' D* s$ `- A. e
}6 r5 e9 \3 ?2 X- t [' E
9 X# y5 U! `, t- g) R public Activity activateIn(Swarm context) {
/ z6 @9 h3 M- r- c; W8 u) W4 U super.activateIn(context);% I1 y3 P" U+ q# c" |& t
schedule.activateIn(this);
# Q0 x$ m/ m. N7 H return getActivity();4 j8 b5 R/ }2 ?) ~- W2 x5 v
}
! u2 F& u0 S/ o
1 Z; V0 }- i+ n0 O- F5 d public static void main(String[] args) {
3 g0 S" I$ W; f# }- g5 h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. A8 i+ ~1 L6 s/ A& o0 d, H, o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 h W: Y- d1 e- I swarms.buildObjects();+ U0 s, H+ i/ q# `* J- J% ~$ r
swarms.buildActions();* b& T. t" x6 z1 j. u1 L
swarms.activateIn(null).run();
{7 E' b3 E4 J& c7 G }
8 n' {! K. e7 ^6 `+ k
1 Y( q" F$ }1 S& t* p} |
|