|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 O9 W1 {- ?7 I3 s1 B' t) V
0 g4 X2 ?5 j8 e' F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% m3 a7 |. R8 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 b0 l, t6 T( z# I
swarm.SignatureNotFoundException- A$ A9 d, r" C- q, O
at swarm.Selector.<init>(Selector.java:76)
; y* Z" ?. _" M3 Q at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 E5 v, G( o0 U* ?3 H. l$ a
at ActionGroupDemo.main(ActionGroupDemo.java:67)3 _, [4 L# J! _" R s
v( w0 W1 h6 k5 C$ p/ }' w5 N9 r i8 I+ }/ L# u
import swarm.objectbase.SwarmImpl;. ?0 w1 W9 r( ^1 Y5 @2 q
import swarm.objectbase.Swarm;. n* ^$ H2 S/ o2 ^2 b& a8 |
import swarm.activity.ScheduleImpl;
2 X+ U( b: F, z( C& Mimport swarm.activity.Activity;
0 e+ H0 I# k2 Iimport swarm.activity.ActionGroupImpl;5 m/ b. c, ~; R2 H& ]4 D2 g
import swarm.collections.ListImpl;
5 [8 n! V' `4 z0 q% @, Kimport swarm.defobj.Zone;
* Q1 @3 ]6 l3 R% C1 m7 Mimport swarm.Globals;/ X. v+ b n- Z+ ?( @
import swarm.Selector;& W, t6 |+ f( }& E6 E
import swarm.activity.ActionGroup;
1 v/ s* @7 ^3 kclass Agent {
0 V u, O6 D0 }! c char id;" o- @0 s/ H) {! q. \' `1 K/ ^! l8 |
/ N# x: _. q3 f# G: X
Agent(char id) {
# C" f$ \* @5 o+ R9 U! }" `4 e this.id = id;
8 ?, H' C! ]) P7 p0 H1 g) B }
* b! s+ O$ G8 ?; T2 z& }) v$ p9 y7 K' t" Q4 Y/ I' T4 x
public void agentStep() {6 b4 @: y7 W/ I% c5 T) _- M
System.out.println(id + ":" + Globals.env.getCurrentTime());5 ^6 n/ Z8 N3 b* M
}
) I. W5 T4 w) z8 p o+ Y, }$ `: \: f* k}
9 b2 {: P" g* D& E# i% `
s, y4 F6 l4 u) S6 Q% K! }public class ActionGroupDemo extends SwarmImpl {
4 o% u0 g" y$ ]( h* O ScheduleImpl schedule;+ g! t+ l" _# B3 D8 s5 x5 R
ActionGroupImpl actionGroup;! T7 y$ Y+ O3 [' f- |
ListImpl list; c6 V. P5 E7 W
char Id = 'a';
) l$ }# t' |$ z \! G" |8 j; {( [* a& Y5 Z
ActionGroupDemo(Zone aZone) {
: ?* ]6 d$ h1 J# V8 n+ z6 m2 E( x super(aZone);
6 U: o+ @4 s( W2 z: N list = new ListImpl(aZone);
8 z" v8 R1 L1 c" i. o" q! X swarmSetp();/ g/ Y: n$ i F; }- c1 T
actionGroup = new ActionGroupImpl(aZone);
$ K3 m+ F/ |' W, r schedule = new ScheduleImpl(aZone);+ R& H% {8 R) Y. q2 {
try {' p V. O% E; X& `
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 ]1 X+ s( [. }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 a8 G$ d- u, H' i; z
- |( k& P5 u! @& @+ b7 I actionGroup.createActionForEach$message(list, agentSel);
6 [ j5 b" Z2 Z+ ^) Q$ i: g- N actionGroup.createActionTo$message(this, swarmSel);
. X8 Q, ]5 k' f/ }5 k* o schedule.at$createAction(0, actionGroup);8 H" j) w" F* m
schedule.at$createAction(1, actionGroup);- d: D" K: u' x
schedule.at$createAction(2, actionGroup);( C9 t) e( S' U! I
1 ~9 v4 i' K% O5 s, `2 `
} catch (Exception e) {
" s3 b* r# \4 V e.printStackTrace(System.err);
# \+ v$ U# J1 \* k7 `8 W //System.out.println(e);
. E) P$ r% L5 g$ l) ]& H; j+ w7 a System.exit(1);
( i: H/ t: Q, [/ l" E! J }9 y* I7 @+ ^* @9 S
7 N/ u, ?6 q# p9 M( W9 P1 h% H6 v% T) z v$ Y6 F9 f
}
) m2 H' F! k! s& ?& d( W$ H1 _8 P# v
+ Q1 W$ S9 H% Z' x2 } private void swarmSetp() {
2 ~% }/ a8 B4 P% O( W6 w2 ^ list.addLast(new Agent(Id));* c5 K Q3 I5 M/ i. H. g
Id++;; N1 q" \1 F) I; T& H$ r
}
j) R; s. M. C- X/ Q5 w8 `
+ X* u( q% H0 T j public Activity activateIn(Swarm context) {
9 ~9 W" m( H9 w, U' ] super.activateIn(context);* `9 L- }! [6 V9 E4 p$ n, K
schedule.activateIn(this);
( C# r1 T+ d) V0 d return getActivity();9 o; q, o* W9 F/ O3 e! p& G
}+ D, i1 X/ Q; V7 L9 q! }- d
. Z, Y; P; a, }- |. |) R& t. n
public static void main(String[] args) {
0 | m2 R9 n6 U9 k9 j Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 ~* G+ U$ v% K Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! k3 z1 d8 b/ J
swarms.buildObjects();' }/ i# ]( ]0 M1 z
swarms.buildActions();
9 ?; z7 r2 Y% ]" G swarms.activateIn(null).run();% V: Q& G; ]) C! b
}# v- h: _) H9 R7 I* H
* h- ~8 B; ]% S) H. Z- l} |
|