|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" t7 |- w( s' p! t
t: g! i5 q* B v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# Z$ F& h& M. n9 B3 N5 w; `3 n' f+ A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ i0 X: @4 D+ L8 O5 A$ b4 H
swarm.SignatureNotFoundException1 O+ y+ b/ N$ |8 s
at swarm.Selector.<init>(Selector.java:76)
7 ^$ S3 j2 X( E6 z8 v8 w9 M) m. F; Y- P at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" f0 \ Q8 k8 b& j2 `8 } at ActionGroupDemo.main(ActionGroupDemo.java:67)7 D' Y" e& b' E' H( l5 g5 [2 Y
: b; C( p' C/ D# z' `1 K4 j& I1 |7 |+ B, }# M( g4 R7 \5 t% T0 ]
import swarm.objectbase.SwarmImpl;
4 ~; `+ m9 E- uimport swarm.objectbase.Swarm;
2 h3 p* _9 a: S/ c' Cimport swarm.activity.ScheduleImpl;
) l8 h5 {5 m7 e. rimport swarm.activity.Activity;
/ I* S i- G9 @0 \5 O, R* kimport swarm.activity.ActionGroupImpl;" r( Q5 ] u7 [# Q
import swarm.collections.ListImpl;5 L* D" w* ]3 t5 D- G/ n* }
import swarm.defobj.Zone;
6 m5 k V. e7 Q- r4 n& p# h. ^2 Dimport swarm.Globals;8 u. ^) S! R5 P+ v
import swarm.Selector;
& A1 S% a9 y( V% y9 Nimport swarm.activity.ActionGroup;
( O5 O J R9 f0 j9 sclass Agent {
5 {7 @% \- o5 g' C* b: ]% M2 [5 }. j char id;
/ B4 ?0 u8 d) \. B" P: P7 E9 @
: g9 r2 _& m; t; K' q* L3 \( g" y Agent(char id) {! O0 e/ m! H# s% h/ G) E6 t' _ ^
this.id = id;1 B0 _; P2 l3 x. D- u
}6 [8 ^9 q- O3 ]9 ?9 }
8 l; S( g- G0 u3 F2 W w6 a
public void agentStep() {
" c0 H w2 ~7 {$ ^8 I System.out.println(id + ":" + Globals.env.getCurrentTime());+ V0 G( z" j6 }8 O! k/ z. C# [
}
, D+ F: |5 S, I: l% R}/ E. z: [( a z7 M$ w% W5 N8 |# |
, Z4 w: `: f1 H" m# a+ _5 p
public class ActionGroupDemo extends SwarmImpl {
5 w; T0 b0 }6 M) v: m0 G- b% J ScheduleImpl schedule;
; y, w% q9 a3 m* v3 W/ P ActionGroupImpl actionGroup;
9 s9 b* \, Y- ?6 D$ c ListImpl list;
* T' c3 v6 Q8 ~: s% Q char Id = 'a';$ j8 N2 P; L' I. _6 `
( E: p; B X c* p ActionGroupDemo(Zone aZone) {: R# D7 \) h8 }& w% C
super(aZone);7 w( E3 C! v( b4 @7 l
list = new ListImpl(aZone);
2 r5 L5 s( [3 O' p; Y4 |/ _ swarmSetp();
) D- }/ E/ m% I5 V. K actionGroup = new ActionGroupImpl(aZone);+ H1 A; M3 V% W
schedule = new ScheduleImpl(aZone);
: a" u. W8 F0 N& ]# {+ f" I try {9 T8 y2 H' y. q7 R& o) h# O0 a+ J, w
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 M4 D) ^& j" I6 n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 H% N, J0 L) [4 Z7 J/ ~5 F
5 h$ M% [; f9 N; ^( f# O
actionGroup.createActionForEach$message(list, agentSel);
. u f; J; g- X actionGroup.createActionTo$message(this, swarmSel);
+ s0 Q* {* j0 j$ j$ | schedule.at$createAction(0, actionGroup);
! e, ^! h2 \$ m7 y* u schedule.at$createAction(1, actionGroup);
. `) I5 v+ S7 `0 c& n schedule.at$createAction(2, actionGroup);7 G9 F @" p. I' Q
5 j( U2 |; r" J; ~$ g
} catch (Exception e) {" I! A0 t& g, C" h: m. K
e.printStackTrace(System.err);
2 }7 K3 b- C/ _/ i% t( T0 f //System.out.println(e);' h1 _5 I# |2 X+ C# m, C6 w9 j
System.exit(1);
8 N' f2 s6 }2 w* T }, \& t% a% S9 j5 @! V
P; w7 L6 e! x
* m! A" I$ J# r; G) ^+ L' j% ?" r }
- \ W8 I/ f' O- o* {$ j8 C$ K
( K/ a1 a7 n6 ^! k private void swarmSetp() {; g# w0 o9 r1 g d: D% g/ B
list.addLast(new Agent(Id));- q3 w5 ]5 s* i* b) z
Id++;* Z: `* i' r4 _( I) C* h9 v6 C$ A( m
}
* f; @. X, `8 V4 F& H/ \. T
+ {0 M& J9 G2 h' E) |' f$ C public Activity activateIn(Swarm context) {
! X* T: [# S$ p5 H" b super.activateIn(context);
0 P, W2 K( B/ Q; G# B1 U schedule.activateIn(this);
" p: C1 |. h. } return getActivity();
! |6 I6 ^0 N; l b6 ^ }8 K e- Q5 ]: S6 }' Q8 x; m$ V4 {) y5 a
* U' O X. n( B public static void main(String[] args) {8 v3 I! e2 o3 p5 ?* r1 a4 {: F0 t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 H6 L2 R' o/ x% A
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* C0 y! a+ L/ a# |, g3 X# z swarms.buildObjects();; t( t" p/ l# p% [$ g7 E. _' ], @
swarms.buildActions();
0 Q+ U$ W6 _, S) y/ X. \ swarms.activateIn(null).run();) r- E1 Z& `) M) a7 D, b- x M
}* D- i$ u7 k4 G! y8 T6 K
/ r5 [% Y; V1 f: D$ t" @0 b$ @} |
|