|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ E! J: g( }% p* N) s
/ |. A/ k% F+ @8 o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, f: c/ X: H( v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 c' Z- X. `3 G/ A9 ~$ e9 Cswarm.SignatureNotFoundException4 i" O6 u$ S9 _+ s U
at swarm.Selector.<init>(Selector.java:76)$ k+ N# d( h+ ]1 }+ P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), m! l; ` B% w, M! W" h$ f2 | Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)' f5 W6 s1 {4 t/ X0 r
( ?# Y; i" l4 b6 ?, n9 h) x) G7 W* M" M
import swarm.objectbase.SwarmImpl;( z' _* L! F3 C/ [
import swarm.objectbase.Swarm;
5 F8 A& J$ d# s+ x& z; k& ?import swarm.activity.ScheduleImpl;
1 b: I- R7 ~# z' s+ himport swarm.activity.Activity;( S) n# S) C5 `1 Q( t1 l
import swarm.activity.ActionGroupImpl;
$ h1 ?: x+ Q+ P3 {/ Timport swarm.collections.ListImpl;- F, \) f# U) p n7 a0 y; Z, z
import swarm.defobj.Zone; 2 n5 N3 s+ Q! b$ m& I
import swarm.Globals;9 ^: p* B' h8 |( F5 W
import swarm.Selector;) R) ]/ v9 Q, w; a C" h
import swarm.activity.ActionGroup;
2 }/ U5 G5 ?% vclass Agent {
}. h$ U) P% q$ i' ] char id;# r% q+ _" ^" @/ h5 J* v3 K2 H
; t* |( l+ R0 d$ w3 [; b9 ^5 [ Agent(char id) {
) R% p$ u4 E: ^4 ~0 v this.id = id;3 @* ]9 c. |8 ~2 Q, l
}
# u+ [; q6 U# }% M4 ^# Y8 c' @$ d: f/ L0 m: j( v/ }
public void agentStep() {8 | V7 T9 K4 w
System.out.println(id + ":" + Globals.env.getCurrentTime());4 k6 E+ v0 r+ s: J& D9 L
}
, g$ w( K, d7 { p9 l}
" T" w7 d. {' n6 o8 Q1 ^1 |/ T: B M
public class ActionGroupDemo extends SwarmImpl {
& P" i9 m- ]. ?) x& }) V6 Q( n ScheduleImpl schedule;
3 c& }) j9 o3 b ActionGroupImpl actionGroup;
. h f- O5 R! W& d ListImpl list;
1 k) B+ ~3 B) A- f; J char Id = 'a';
( z: g) G( ?0 N$ ]
- A) _- Z* ?$ A ActionGroupDemo(Zone aZone) {$ c( b7 ~% c( i" f! m) g4 D' E( ^
super(aZone);; D, W4 c/ l3 i0 u
list = new ListImpl(aZone);
' U, N) I0 u: g |6 Y swarmSetp();; d/ W( z! Y$ c- W3 ~0 V: l& ?, |
actionGroup = new ActionGroupImpl(aZone);
: C2 t' i! x" Y) | schedule = new ScheduleImpl(aZone);
8 G _$ j5 e6 A6 G( _ try {
! d9 @# L5 e. {% w w Selector agentSel = new Selector(Agent.class, "agentStep", false);
! I; `: b/ K p3 U W& U* ^ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 h0 \- W. g% ^$ N' f* }
( M& W2 w- E; n( P$ x2 a
actionGroup.createActionForEach$message(list, agentSel);
2 @* \/ p8 I/ f9 u2 B actionGroup.createActionTo$message(this, swarmSel);
E; r! S* i! u+ ^5 w W schedule.at$createAction(0, actionGroup);
6 y# j; _! ?2 K( c schedule.at$createAction(1, actionGroup);
( g& T* M0 \, ^7 F/ V schedule.at$createAction(2, actionGroup);) t7 H4 k4 R* g* b
. w& L, C" U! @$ j
} catch (Exception e) {
, w6 o) [& y- W7 [% t e.printStackTrace(System.err);. h5 r4 f. R% \6 U
//System.out.println(e);
) X8 q8 r2 l2 r! o. c" T d9 | System.exit(1);* \9 E! ~/ q' w4 f+ f/ K( N+ u
}
- y: l9 e% |% O5 f: n( O& y/ c# ?8 v$ I! R
" E& I4 l6 ~% z& E$ E: Y3 ^. ^$ n
}
1 v" B$ X- Q$ ~* t9 ?' [
5 {3 Q$ K1 ~6 p, h) E% e private void swarmSetp() {3 ~* ]0 |3 ]1 ]2 W5 a. c
list.addLast(new Agent(Id));
- d2 E% l7 O! C1 N* Y Id++;8 o" n+ U. T# C
}2 g) u+ Y$ E8 S+ _) |
9 h& K1 I B4 h" w* T public Activity activateIn(Swarm context) {# u% O% x3 { h( P% r% s0 n
super.activateIn(context);; j( H9 `" |# _* |
schedule.activateIn(this);
+ U/ t0 a" b) B/ h return getActivity();
- C1 E0 ^5 U( B: q8 ` }! N. J- y5 T1 d, L `" a" E
* ~4 j4 Y0 a7 ]7 I$ T
public static void main(String[] args) {
4 ]) X( k: Q/ {. u( ?7 ]2 B/ y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 \) @% q! E+ n% v* w9 h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& C/ t: o) ^ N0 i swarms.buildObjects();* p$ U' g; ^/ B. |* P, z6 g
swarms.buildActions();
0 u3 b- o- l) f& ]& r4 h swarms.activateIn(null).run();
: \ ]" s9 B7 v$ L0 \ }
4 E, I0 j$ e W& R
' U' t1 V0 @/ L* w! N4 w} |
|