|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 J9 f9 ]9 Q8 M: i% ^% s+ E: _$ H, o0 u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. U' u. [! Y# y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ A& E1 S& R; y2 e+ u
swarm.SignatureNotFoundException2 s6 \( q! D. s9 v! f
at swarm.Selector.<init>(Selector.java:76)
/ Y4 M4 I: I2 T8 Q4 _* o& w8 b$ b! B at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 A4 a) D, T; }8 `: K1 \ at ActionGroupDemo.main(ActionGroupDemo.java:67): C: v# r1 ]- v, R0 P
' U7 j/ Z' u4 u. R
9 d+ P: {2 e. @5 r D( mimport swarm.objectbase.SwarmImpl;' t2 g* x9 ]+ l3 y
import swarm.objectbase.Swarm;4 r# a3 v& n# Z" Y+ O
import swarm.activity.ScheduleImpl; I' ?; e5 E* r
import swarm.activity.Activity;0 j7 [- n7 [/ x. ]
import swarm.activity.ActionGroupImpl;
( x G" ] y1 W2 y1 U3 vimport swarm.collections.ListImpl;, n+ R6 k; H0 J8 ^6 T
import swarm.defobj.Zone;
3 ~3 z1 W! r' timport swarm.Globals;. N" U3 B! t$ D% a+ X
import swarm.Selector;
, g1 M0 U! M& E3 Dimport swarm.activity.ActionGroup;
+ s3 u3 R) x2 n# Eclass Agent {4 t7 I0 ^3 p$ [+ O
char id;$ i8 V& k9 @: D$ y" A B6 @
! |3 s2 X3 @9 p9 s3 l4 | Agent(char id) {
3 ?0 U8 l7 p1 O$ `! a this.id = id;# e. r! `- s' {
}: B$ b4 Q0 R' G% u$ |& h5 f- Q0 A/ o
2 q8 p, \" M% h) R7 X6 D0 j$ }+ d
public void agentStep() { A$ a" Y( I0 G' p
System.out.println(id + ":" + Globals.env.getCurrentTime()); L, k7 E! v9 |& }/ |' P" \. a
}( _" }* t; x- U) K' L# T% c
}# p* d; b" T u$ K% S5 _2 i
6 `( M$ Y/ E. W' T
public class ActionGroupDemo extends SwarmImpl {$ O6 s& @( t' |3 s! j6 ?
ScheduleImpl schedule;
! c* O+ h2 F; V. q0 U. b+ a5 ` ActionGroupImpl actionGroup;4 n% M! L$ s1 @, P( r1 ^ B
ListImpl list;
1 V6 s) l$ p2 L. z$ j& c6 S char Id = 'a';/ F b- u! U) v: ?; `' R/ K
3 t" X$ P- Q& X& ?8 w- K
ActionGroupDemo(Zone aZone) {
3 j m) F5 v: U. ]5 w l% O super(aZone);, A9 i% Q' p' G* i9 s
list = new ListImpl(aZone);- @4 o. E; L2 P& e. U
swarmSetp();9 F' z7 ^& F* |1 q' x! _: w
actionGroup = new ActionGroupImpl(aZone);
4 f' Z8 w6 e6 u7 C schedule = new ScheduleImpl(aZone);5 l) K( R" R: V6 A% Z) l7 B
try {, [& U# Y1 y3 }8 d
Selector agentSel = new Selector(Agent.class, "agentStep", false);4 P3 E9 g% w2 R$ I! S3 x! l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, {0 W1 f/ I' K
9 Z. _$ O0 S/ O$ y. S+ W actionGroup.createActionForEach$message(list, agentSel);
# F+ A4 u9 T9 T& M+ h actionGroup.createActionTo$message(this, swarmSel);
8 Z' X2 H. e: {( x& j schedule.at$createAction(0, actionGroup);/ c. \, G+ }0 W! S
schedule.at$createAction(1, actionGroup);
$ [; d6 }0 Z- c7 p, L0 u ?3 E schedule.at$createAction(2, actionGroup);. e3 d# I6 ]; `
/ t O' F x4 j } catch (Exception e) {
4 @- H$ s) u; x4 B* V; ?+ L- H4 [ e.printStackTrace(System.err);
6 U7 v* l# _' K, g H( i //System.out.println(e);3 T' P) V! [9 |/ u$ n; J$ K2 |6 t
System.exit(1);
$ {: e e. {$ d+ d( x2 C3 z }
+ f9 K9 }3 ^; e! H7 g" Q4 e4 n/ |8 m3 X" i2 b) L& \
: S. K; H+ p' [/ h% a! p4 U
}
9 w0 m- `( A0 Z$ ]5 i: M8 p, m& m9 }4 g
: j6 P& |4 D* L0 N8 k0 g4 h private void swarmSetp() {
+ S. ^% ]9 }7 D1 I+ W6 G" X list.addLast(new Agent(Id));6 U w, a8 T( v* z8 T4 r* c8 l
Id++;
0 ]1 V0 Y# R6 |+ q- F- O }2 a g- h, P }7 G+ o
2 x8 E, b2 T* V+ m9 k public Activity activateIn(Swarm context) {
6 f/ M, M# C8 P, L d3 a8 O super.activateIn(context);
0 e! m" f2 E" I& s schedule.activateIn(this);
7 t. W1 U1 m: d return getActivity();/ n0 z& j2 q' L% q$ j2 \' e
}
7 P O6 L6 C* F8 _. r, f$ e" w/ }( M2 p* w. }
public static void main(String[] args) {
/ l6 b# a9 ?3 V, d p- Y# ]! s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 g, u6 |+ {/ B# H
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# H0 P3 D5 T3 g: ^/ t/ x' l swarms.buildObjects();
+ m+ S7 v; j0 ^: ]/ z% O swarms.buildActions();
% K9 G. K1 }' o0 e/ B* t swarms.activateIn(null).run();
% D8 M6 c5 t' m V }
& h8 j, H1 ?: I0 ]
+ j! ~$ g. T$ p3 R} |
|