|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% ?4 B2 z- j) \: }/ L1 g$ n1 [9 E1 r" P8 F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# L7 k2 F- `& E$ x5 i) `" O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( D: ^" T' n+ `: G& s5 \7 F+ x
swarm.SignatureNotFoundException
- l$ |" B3 a, H6 r1 m) m! M at swarm.Selector.<init>(Selector.java:76)2 e9 r0 j' j, Q" L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' j" c2 `) K5 H6 F at ActionGroupDemo.main(ActionGroupDemo.java:67). b. L. P- [# ~ q+ I" B
; B) Q: U: w0 d4 L
2 E& G. q+ Y5 T) J
import swarm.objectbase.SwarmImpl;
+ S9 J( R8 n; G9 [, `0 rimport swarm.objectbase.Swarm;
) K+ m. b2 s3 t+ s1 A- Rimport swarm.activity.ScheduleImpl;
+ l. B6 q5 F- j: s+ I4 Z; rimport swarm.activity.Activity;( M# c! Y- c. W# Z0 X9 l# D
import swarm.activity.ActionGroupImpl;
% X1 j0 j8 V4 |1 `- c0 w/ S- Simport swarm.collections.ListImpl;
( w: f. p2 ^8 L3 H7 L8 e; timport swarm.defobj.Zone; r! ~8 ~, _8 u- m, z
import swarm.Globals;. T2 l9 p! Z l# c+ A, p8 e m/ E
import swarm.Selector;* Q7 z D9 u }6 s2 Z9 t* _
import swarm.activity.ActionGroup; ; [* u m9 P7 P
class Agent {
9 K" V o9 ]8 C& n- m9 }6 d char id;
6 g: H& U- {6 I/ ~, F5 y! ^" N+ z0 `+ q) _3 [
Agent(char id) {! k: B# T5 _2 n5 ~+ E9 Z
this.id = id;
( z# d7 O0 u3 V3 _! \ }8 E7 {) q% c9 W$ _4 P+ k
( W3 R4 h: y+ N! ]
public void agentStep() {
6 j7 |6 [* y' O4 \1 n. F2 \% j7 F System.out.println(id + ":" + Globals.env.getCurrentTime());
; N4 r0 G0 O) W4 X# M) T8 Z }
, k: L2 m% w5 m0 g# s}
. z0 J. n L4 k2 }+ c4 c5 |# V2 [/ d8 L
public class ActionGroupDemo extends SwarmImpl {
: M7 N( @1 ^- J; X ScheduleImpl schedule;
) w7 z5 Z, h A) v: H ActionGroupImpl actionGroup;
/ @, W' }) m& o! {' a$ x* d. o ListImpl list;
$ H, e5 q( ~7 }" e3 G. N O char Id = 'a';" Y/ _; A" T! Y6 B7 l8 j
, Z6 H# _/ F# _! P; g4 t% U ActionGroupDemo(Zone aZone) {
! p/ |3 Z8 c" r, T/ f super(aZone);% N- _3 R. c! }- y+ U6 L7 V
list = new ListImpl(aZone);! W/ d J! U% n+ ~! e; _
swarmSetp();
. J9 g# O6 V: E# H p8 l actionGroup = new ActionGroupImpl(aZone);: ], }/ [0 M3 \7 L6 J
schedule = new ScheduleImpl(aZone);! D4 f* S) D& G( J+ K" h y
try {2 d: _6 f' {/ l& ~6 u l
Selector agentSel = new Selector(Agent.class, "agentStep", false);
' m, {* t/ h! Y2 } Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# G9 K8 d+ f1 o
! u' \' K+ w, V8 E$ r, N actionGroup.createActionForEach$message(list, agentSel);
6 i. Y! z; G# g! i1 Q$ a) Q actionGroup.createActionTo$message(this, swarmSel);
% q4 `7 Q! m9 F% a. X+ ?' K9 Y schedule.at$createAction(0, actionGroup);
' u& N: N4 v5 S7 H, F- E schedule.at$createAction(1, actionGroup);; Q7 O ^* _ P5 g* ^
schedule.at$createAction(2, actionGroup);
, m6 f& U q9 D/ U( g8 @ v2 r. c3 B9 u7 e1 g' t, Q# _; G
} catch (Exception e) {" \. U$ r( E" |+ [, S
e.printStackTrace(System.err);! |6 n9 J8 d4 Q( s0 H, A
//System.out.println(e);
; b2 ?( d3 C7 d System.exit(1);
% V3 H0 q4 t# T }
' Q$ Y& d* |( E2 T4 l |# K5 G% k: F8 d8 g/ ~+ I/ n% b6 t7 ]3 B
$ ^( `/ `7 z, X }' x* n) v1 V& `8 V* P
: v' F* q' B& i' a, f private void swarmSetp() {- G X# J+ {! N6 Q+ ]$ J
list.addLast(new Agent(Id));
7 v: D' ~' \, A$ Z Id++;6 b" d7 `2 P. S
}
% N; o4 F8 R8 g6 y3 D5 R
9 f$ p4 Y: |/ ^2 p; }/ `6 `- ~ public Activity activateIn(Swarm context) {
3 v" Y& j! e3 N6 F$ |1 K5 j- k super.activateIn(context);2 ~! ?* ^( S$ E" s' @# _# f
schedule.activateIn(this);( `' m- k% s" O" h4 H, d7 ?4 i6 v
return getActivity();
, }% J6 a+ S, W6 C }, _+ N4 u) o/ \. `
, i7 _+ y b& p( _: ?% M! m public static void main(String[] args) {2 r6 f" D, b4 Z
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! ^2 ?4 L0 n) z# i( i7 ]- W, {
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: t# M- N: y h p% ~ swarms.buildObjects();: \* e! \4 P0 |& J8 ^
swarms.buildActions();
$ z; {9 f' T( f' C swarms.activateIn(null).run();
& R: B* [2 v+ N9 u7 b' h( r: I }" y% |* p2 H4 A! I7 h3 E! j
. ~" i" x! ~' I0 `& w# U} |
|