|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
F5 f$ N) P' |. ` S2 a0 c5 S+ b3 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! A: ~6 n; D" v7 q7 ?! O, `0 n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 M0 v9 a3 m9 w( |1 T8 R
swarm.SignatureNotFoundException) _8 ~- X2 Y. w
at swarm.Selector.<init>(Selector.java:76); Z$ B: k5 i3 b+ k* n1 W3 `- u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! [' n3 L. F4 v' e, r) q
at ActionGroupDemo.main(ActionGroupDemo.java:67), y# f& ]9 {& e& p1 C
( ~8 }6 c% h$ _; {
- S# F. O4 ]# J" e4 T, Bimport swarm.objectbase.SwarmImpl;
2 _+ q" V( T6 ximport swarm.objectbase.Swarm;
- @/ f8 E) y7 iimport swarm.activity.ScheduleImpl;5 r* o/ c, y H/ F: ~. z. Q
import swarm.activity.Activity;6 t. X! H. `" {1 H/ E6 \
import swarm.activity.ActionGroupImpl;
& d! n4 i x) }! ?. Qimport swarm.collections.ListImpl;
/ W. M( t b7 N" R1 q6 Iimport swarm.defobj.Zone;
8 J; a" t5 D1 H9 Iimport swarm.Globals;
2 Y6 i# U' s3 fimport swarm.Selector;) t5 X# U3 j$ O) Q( f7 d) N
import swarm.activity.ActionGroup;
2 x9 ~+ ^0 B: Y; V( M; R: N0 Cclass Agent {
1 v' _# |: S8 c5 y; H5 P. [2 {) k char id;2 b/ P6 `7 u2 u: A5 k0 b4 i
9 N0 F5 S; A4 f; w6 D. D; e2 T
Agent(char id) {
9 Z* l' s5 U- D5 K this.id = id;
( ^3 z3 Q- H. u }, ^0 m$ u7 ~. ]- U& `# w( X6 G6 Z
2 F# u" d* Z. |; D& ~
public void agentStep() {
- o$ ]2 R( B& C$ f- p* p/ j$ L$ Q0 h System.out.println(id + ":" + Globals.env.getCurrentTime());9 b9 P8 g d2 N' C
}$ a7 U/ Z2 G+ X& _( @, S% p* w
}
# O) ]5 J( V. n) V1 m1 O; ^+ ~, K* i
public class ActionGroupDemo extends SwarmImpl {1 B- }6 D# X8 x6 T
ScheduleImpl schedule;0 r" L, y/ A; ]2 ^, t& v7 R
ActionGroupImpl actionGroup;, [. c. f `* Q% Q) h5 V0 X
ListImpl list;# p( R6 {( F5 R: g6 c/ d, C
char Id = 'a';
% G P. X. B% s1 t3 D4 B% x# X7 m6 q+ Q! B; T: ]
ActionGroupDemo(Zone aZone) {
; f7 s) O" @* F super(aZone); Q+ S/ _0 ^# P: `% M
list = new ListImpl(aZone);* f, U5 t' B* Y+ k
swarmSetp();
8 s- I# I& P/ _ actionGroup = new ActionGroupImpl(aZone);+ J! W7 f3 z4 C1 j0 _
schedule = new ScheduleImpl(aZone);
2 _1 ^5 E8 ?5 Q0 A! B' f" F try {, {( b$ r& r a# X9 J# ~
Selector agentSel = new Selector(Agent.class, "agentStep", false);* D* |+ v i) f' }5 _* _5 D) g
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% r4 ^4 k* {9 |" ?4 s2 v/ A6 K8 J5 K
! v+ H' e y# t6 [$ C8 \ actionGroup.createActionForEach$message(list, agentSel);
1 a5 ]; Q3 |4 t! J( J actionGroup.createActionTo$message(this, swarmSel);
! Y3 T, ~; }+ x2 X0 |# p schedule.at$createAction(0, actionGroup);
/ ^; t! T! t. U) O% [- a5 p7 J schedule.at$createAction(1, actionGroup);: W, d( D7 n: C2 B) T
schedule.at$createAction(2, actionGroup);: d6 j4 z2 E5 d5 o+ J
# \- t _& o' M' ^7 ~$ i } catch (Exception e) {+ b+ Z) }) V/ `/ U; \7 R
e.printStackTrace(System.err);
4 L( _0 {0 q d6 y9 e, {4 e$ X //System.out.println(e);( q0 A1 Q2 f, c. r( _1 n
System.exit(1);2 M0 i4 d+ j( i$ L+ V
}# I: O/ B5 y# Q8 s1 q# A
# _4 M* R8 P; ~; V* G, D! ^
) e0 r5 x( S! b% v5 q$ R: `- l. h }
) |' S" V r! T' o+ J5 ]9 u& ^5 r2 g6 c7 |& q3 P0 ? ~; H3 ]5 w* Q
private void swarmSetp() {
! w- V: z. Z1 B( T9 g list.addLast(new Agent(Id));2 d/ t+ c# S7 F4 i# G0 }
Id++;+ e9 O* _; h) y
}9 {7 d8 E0 M4 t: f2 ]
9 V s; D& _( P7 _/ W2 B
public Activity activateIn(Swarm context) {0 K' [3 y" t# D$ A1 I2 g
super.activateIn(context);* _9 I% R: \* B
schedule.activateIn(this);3 Y }6 S& N6 ]! d
return getActivity();
- m# T( P g" J2 o- ^ }4 A/ C7 C: c5 z% C( j
2 l$ ?: [8 O. y' Z; y public static void main(String[] args) {
5 R* {: A7 |4 R! B9 C Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* ~* i7 _& K4 i( R9 O# | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 h, d" D* T: r: b- ?: h swarms.buildObjects();. B" \# M: r" D7 s. K0 X2 F
swarms.buildActions();' e" T/ r$ q) c$ h) G8 S
swarms.activateIn(null).run();
' Z; ?/ s' N9 c/ F. s) ] }" C, i8 c+ i6 s1 V
0 p0 e% H& O& }, y* j} |
|