|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 \* N* `* l m8 e/ g A+ X* L# U9 @- x6 b" {% f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) S5 b- x) J7 a; p: Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# \9 J G& _. [) y4 I
swarm.SignatureNotFoundException2 n" F, j k) f1 p( R8 {% t
at swarm.Selector.<init>(Selector.java:76)
, M$ J4 | e u6 l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" u' }( ?( k/ P* [8 Y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 W. ?& x: b9 E+ A7 B" T# a
- M# h I: w5 p4 E: ^4 y4 f* y5 Z% g. {- _" J; x
import swarm.objectbase.SwarmImpl;
# p4 D- ^& x$ }- ?import swarm.objectbase.Swarm;& W9 K( \+ L- H. R' Q& n5 Z
import swarm.activity.ScheduleImpl;
1 |9 o- V3 a+ Z; ^5 D8 dimport swarm.activity.Activity;
+ @1 x( W5 s R- X3 bimport swarm.activity.ActionGroupImpl;
! q4 d5 x* u; V( f3 X# k; n9 Yimport swarm.collections.ListImpl;4 Z6 _, ?* I. K
import swarm.defobj.Zone;
; a q8 @) D9 ]- c9 C, Ximport swarm.Globals;
$ [1 Y" c. V& Z- e6 `5 _import swarm.Selector;
$ a# f+ ^# D$ Q+ `* B2 Eimport swarm.activity.ActionGroup;
# g6 Y% y. D8 u) Q. b9 `6 Hclass Agent {, T9 ]! u$ G. ^$ s) D' N3 l
char id;
! D. s' {2 G0 [9 o
/ Q: M& b, u$ K! [' O Agent(char id) {6 B8 b' H7 S6 x7 a' b4 R
this.id = id;
! W& j5 A4 ]6 z! c, E }
' f+ ~6 s6 `) E2 m5 F0 Q2 ]! `! B3 }; ^8 J5 h
public void agentStep() {
" u" g5 g, l, q8 o* }7 q System.out.println(id + ":" + Globals.env.getCurrentTime());
+ E" j2 F$ V" M1 p% Z- \3 c }1 P% A+ M" |' i* Z& Z4 J
}
) C& a% A R* e# I/ F) U9 F9 l4 I8 _5 ]+ i$ k, ~
public class ActionGroupDemo extends SwarmImpl {/ `+ Z. Z ]$ Y1 y- X- f
ScheduleImpl schedule;6 }' @4 C2 c- {) Z( g% E/ _
ActionGroupImpl actionGroup;; c' X+ j( ~9 X! A( \7 y1 [9 V
ListImpl list;
: \8 Y, h( e1 _+ `/ _# _* j char Id = 'a';/ y8 U/ o& F' E \
! N& W: u- X, \
ActionGroupDemo(Zone aZone) {) V2 j% I% x7 c
super(aZone);2 {; E8 E& S; r) d7 e5 Z
list = new ListImpl(aZone);+ o* }2 i4 }$ O3 w# t7 [- Z7 B; w
swarmSetp();( U6 k2 z% w/ ]4 f6 c) A# d
actionGroup = new ActionGroupImpl(aZone);4 o" }& o4 M5 _) a+ B
schedule = new ScheduleImpl(aZone);5 t/ T }! B: c3 E5 V
try {! l/ h& g3 |" J* s" u8 N
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 Y I* e+ r" L: n# Q. n. Y( C3 |( P
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; Q r t G e* C( q
5 U) t+ x& g2 e7 i
actionGroup.createActionForEach$message(list, agentSel);
& H6 ?6 _" q0 R: u actionGroup.createActionTo$message(this, swarmSel);
' v) w# J/ h9 X" I# Q6 v! r2 V, g schedule.at$createAction(0, actionGroup);
0 L7 t* \- F' _' l* h schedule.at$createAction(1, actionGroup);
9 H: T$ i" d. n6 N0 Z8 Z1 h schedule.at$createAction(2, actionGroup);: ~- Z- O7 c) \/ F" I( b
- h. C; X9 `- Q3 M
} catch (Exception e) {7 n" A7 j; h$ U8 ?( ? b2 \2 T1 A
e.printStackTrace(System.err);( S# P- t2 [( k
//System.out.println(e);( g% R3 I5 F# }
System.exit(1);
+ |' b# B, ^& y! \( u }
4 c7 l K" V# M6 v
; z: d4 ]) w* a) V9 J( H5 l/ O
% u& [; }7 s: D }
2 f! P( f, \$ h2 U7 \6 \. j/ e& |2 m1 Q; n c# m6 s- q
private void swarmSetp() {
7 B/ R- d" t; h" k" B8 k1 y) Y list.addLast(new Agent(Id));5 p g! }1 X6 z: E* I T
Id++;6 V9 J7 \3 S+ k/ i) l3 ]" l( i
}
+ [2 ?. x7 e. }
: o$ t1 [$ x$ Y) V" |" q3 Z) v public Activity activateIn(Swarm context) {9 V* m' d% n8 W z3 U
super.activateIn(context);
) W) A1 X H4 F6 A3 K8 p0 b# X8 W% ? schedule.activateIn(this);
1 `, g/ B$ W) m0 B0 h! J return getActivity();$ _8 Y, w% n, y% p3 O
}& ]) {: q' q- J' `9 N6 L
9 ]1 {) ^% h5 C) N
public static void main(String[] args) {5 T! j/ O# D! Q# i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* u0 z" Z: l# l( Z) |4 n2 f' o! \ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! L" l, ~7 I5 a0 L7 D* {
swarms.buildObjects();
* Z! u5 Z! r$ A: u3 Y5 f5 m8 {( X swarms.buildActions();0 o6 u4 V4 G, v( z% i& w ~
swarms.activateIn(null).run();1 R! R6 H4 r" f+ L( O4 F; G
}" L1 h" Y+ H$ w$ i. @& O8 E8 K- v& n% l
3 X$ \1 o2 i5 E6 a! O8 y- x. G) l
} |
|