|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 _* h0 N4 X G* C
2 [- u1 t$ b# v/ R* Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& l2 z' l1 y* a p& y0 A- n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ p" O6 B4 a# t. M* J) Q) b
swarm.SignatureNotFoundException
* b6 f& G. W5 V) Z" z2 A+ y at swarm.Selector.<init>(Selector.java:76)
1 @$ j' Z! D9 G! z, U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" |* Z c/ H3 h, R' [6 }9 l' F0 i at ActionGroupDemo.main(ActionGroupDemo.java:67)- s+ k3 ?% V0 \' S: P
7 q, S- W3 Q$ X {" Y4 `5 h/ @$ B
import swarm.objectbase.SwarmImpl;" |6 h8 \) Z1 c* p2 a1 L! {# m
import swarm.objectbase.Swarm;. {% N2 X1 I, R
import swarm.activity.ScheduleImpl;
- G: D" x( R5 n& L2 F: N" T& _import swarm.activity.Activity;
6 o; w1 G1 b/ @2 J. Q( R( cimport swarm.activity.ActionGroupImpl;
s% R( ]( U) t" Himport swarm.collections.ListImpl;* F4 ~( R5 |9 c) J
import swarm.defobj.Zone; ( Z" z* ]- N- t2 v8 ]
import swarm.Globals;
3 i5 {& Q& ~" Y3 M& s, f wimport swarm.Selector;
' C% B5 y1 Y3 o! }6 E; J* yimport swarm.activity.ActionGroup;
2 O* U9 ?' |' g3 {( G, Mclass Agent {
& k: ]; a: V# j$ N! I char id;
! C/ v8 T+ Q g% y- ], P) F. l( h* @6 a0 t: W. m
Agent(char id) {
/ \" M) ?, T4 g0 R$ l/ E8 ^ H: ^ this.id = id;
$ T/ t/ g( U, R8 [/ _9 u* R }
& S8 [4 \7 y7 z' J
, r* L: Y P# ^: S% l# x/ } public void agentStep() {# F+ S, v. N" B! r+ }) s+ q S. @
System.out.println(id + ":" + Globals.env.getCurrentTime());4 }6 W6 B) N# J7 C# y
}
/ Z: x$ Y5 {) Q9 {7 F}
3 p$ N% }) x+ L+ h5 @! j3 U s; M9 o. w
public class ActionGroupDemo extends SwarmImpl {5 Z. q% r/ b- }
ScheduleImpl schedule;) d! m' B; Z& r" H6 U: Q
ActionGroupImpl actionGroup;
5 ~# u" p/ e) h$ s, h ListImpl list;- Y$ ?4 F y+ Y6 W# \0 |
char Id = 'a';
1 |! p8 ^( K6 R5 X" e" x7 B
" g ^% h5 A3 G# B- P: f ActionGroupDemo(Zone aZone) {+ t+ l( f$ y$ N: v& X& {6 r: g
super(aZone);( W- K5 y" m" N
list = new ListImpl(aZone);
1 {, H7 K, i8 @/ _* j1 d swarmSetp();1 v; q0 r% i% W8 ^+ S' g# o
actionGroup = new ActionGroupImpl(aZone);
3 v' ]; y8 @; y) p schedule = new ScheduleImpl(aZone);6 K8 J9 P" N8 Z3 J, b& H7 J
try {1 ?8 M! [4 t4 B0 O) L# W! x
Selector agentSel = new Selector(Agent.class, "agentStep", false);! C/ U9 Y% P/ m* |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& O0 i! F" n, l0 H1 {+ d! Y
0 A% G% O/ b% M* C! s1 g actionGroup.createActionForEach$message(list, agentSel);
' Z: ?. W9 I5 |# a) T actionGroup.createActionTo$message(this, swarmSel); T) Z7 X8 @' _8 l; @/ F9 C6 a5 _
schedule.at$createAction(0, actionGroup);
. N0 z. v& N3 C2 e& i schedule.at$createAction(1, actionGroup);$ G4 c+ H1 P, @! T: F8 V
schedule.at$createAction(2, actionGroup);& \+ h( [+ b/ M) a; ^, G
/ s& c( {0 H& w* I2 O
} catch (Exception e) {! ~$ ^7 T% C n1 ?6 _
e.printStackTrace(System.err);- Q5 B; o1 N( M# _! v
//System.out.println(e);
. Z0 c( s4 G# i* L1 U System.exit(1);
+ a& P! i2 v; [1 y2 I }/ |; b+ [& n" w0 q! X, Q5 M2 l
: `9 N/ t" ~' w: o3 Z; k4 J- V6 {$ u
}& o7 ~/ i/ L h3 @6 y6 M$ M: q! G0 O
1 A' I1 Q8 M) @$ c
private void swarmSetp() {
& N+ w. V# C* r J list.addLast(new Agent(Id));
9 L" g/ A Z5 a5 H* t Id++;. o, E! v* G# A/ g. }7 T; b7 r
}+ e" w. k8 j$ H, ?; |* c
& P8 A( X* g% _8 `( ^2 D public Activity activateIn(Swarm context) {
2 Y5 y# q M3 F. M super.activateIn(context); O9 Y, Z, C3 Z9 Q
schedule.activateIn(this);, O* T2 I3 a4 p* z3 G! M
return getActivity();
. x( ~" U4 a: n' j% ]! ^' Q }
9 u' L3 n5 F. ]- U. U/ Y J, R
) j/ w" k$ `4 c+ f; F6 r public static void main(String[] args) {$ r2 e. @! e6 |8 L& q5 {: o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% u8 y& T6 \4 E Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); l0 x0 f2 N) n
swarms.buildObjects();
2 d6 M8 N( c8 z# v; P swarms.buildActions();. g& d; T1 }7 |" c9 A' C( j3 J* |3 c
swarms.activateIn(null).run();% G/ g& a' b' p
}0 } M' L; T$ |* K, o
8 n) F c" O0 y* X
} |
|