|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 J6 W6 r0 A& {" N& R+ M0 f5 a7 F3 F+ C$ r7 A C; o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 }/ G h$ ?8 a! h- Y' i: {1 P% n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# L# t! f/ ] s/ t
swarm.SignatureNotFoundException
& v! X" T# Y& ~$ f8 ~# { at swarm.Selector.<init>(Selector.java:76)* V7 k1 E5 w- m. n
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 T' L6 ]/ C& K, h0 A at ActionGroupDemo.main(ActionGroupDemo.java:67)
% ]! s4 Y! i6 Y4 t2 b; P/ ?
+ a+ h; e l) k$ Z
( f8 C$ X8 G3 _8 ]# Gimport swarm.objectbase.SwarmImpl;
' S! s; f% x4 Himport swarm.objectbase.Swarm;9 B$ g5 O1 C {/ X# g: d* w
import swarm.activity.ScheduleImpl;+ [6 X1 ?8 @3 B8 \/ q% T% |
import swarm.activity.Activity;) }: H8 F+ }- D/ R
import swarm.activity.ActionGroupImpl;
; B! p3 A* t" u1 s9 _7 A2 Kimport swarm.collections.ListImpl;8 z' g, V: F Z: O5 ?( P4 c* Z# h+ `
import swarm.defobj.Zone; 1 L8 u' ]# _4 T, F. L, y+ d
import swarm.Globals;
m* J5 R$ Y" E( }import swarm.Selector;
+ S+ A6 @7 p; G0 U( ~# L; Simport swarm.activity.ActionGroup; 3 J" t( X0 h8 ?8 f( N. {/ q
class Agent {
; }$ m+ l( H' l, O5 g char id;
" Z% u" k* P: z: h5 Z
5 N7 M: s4 b/ h& P Agent(char id) {
- n9 |- X5 b! {! w7 w2 S this.id = id;4 V' F* z3 o3 \ F# e" j
}: Q6 y0 O u, E4 e( V; e7 U
+ D1 b* V1 e# N# `/ G- u& m public void agentStep() {
% B- x4 o; ?( S System.out.println(id + ":" + Globals.env.getCurrentTime());
9 X3 S* [4 J# \( [- O4 s% e; { }6 q% ]: L- D& j" p. Z5 H
}
3 P2 p! a8 ~ a+ m+ `; r/ n" q6 y; s( K" }$ r3 j
public class ActionGroupDemo extends SwarmImpl {1 o% j H* h: C# ^6 A, x
ScheduleImpl schedule;
; A2 n: I% B6 C* ]) ` ActionGroupImpl actionGroup;
% g' ]3 m* I, h' y; {- q/ R/ G ListImpl list;! \$ X& a4 b, e8 ]9 D
char Id = 'a';
# Q- R! z% F- D9 U
7 m9 [) Q. ~& k" b ActionGroupDemo(Zone aZone) {
# B, o# p: T) w- @0 Z super(aZone);* h- F- k$ e2 A- T8 I/ N1 i
list = new ListImpl(aZone);
7 {, {; ^/ B! q2 ~# \: H) d" j swarmSetp();
& I' J- R. p* c7 W/ {5 {$ a0 C actionGroup = new ActionGroupImpl(aZone);
$ O8 L9 N, b, z schedule = new ScheduleImpl(aZone);
/ I" L5 V8 V/ G& B5 H7 k. D try {
* Q# `9 K5 T) ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);9 {- D% Q- b% `! j: s& L. G: E
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 `# Q: c9 A$ v# I0 P
- y* h% c# ~* |1 S4 \0 |7 U$ s actionGroup.createActionForEach$message(list, agentSel);( Y1 m) J) q2 W* W* p/ [; J1 j. T
actionGroup.createActionTo$message(this, swarmSel);
, n# u8 y3 C: s; o2 H schedule.at$createAction(0, actionGroup);' h4 \& q: [3 b" q1 ~0 m7 s
schedule.at$createAction(1, actionGroup);( p/ M k2 g, k7 {9 r8 F$ M! w
schedule.at$createAction(2, actionGroup);4 x) ~1 n6 h& Q7 E. a
4 M' C# h, h( u } catch (Exception e) {5 _9 w }# U) m3 b& i' Q
e.printStackTrace(System.err);2 v* ?/ q( f4 w6 s. P8 d
//System.out.println(e);# o% w& `1 X4 y& B
System.exit(1);, i$ [6 T9 [; w; ^/ ~( T
}# Z! H4 D% J7 C" [: z% p
+ w3 j, n a6 F) i0 B
2 Z' ~8 {% v+ _$ J7 G9 K- g }9 U# u0 \4 D& Q; i+ Z
2 T: J* \8 b" |. k- z
private void swarmSetp() {
9 F$ r: Q" q9 J5 j& q. Z$ b+ z( B list.addLast(new Agent(Id));8 W' U; }! d9 p- h9 @5 J" S* W
Id++;
; H' Y( x9 \! [/ S. F }" O& i4 h2 m7 V% t e
5 a `/ f7 j' C6 R8 V public Activity activateIn(Swarm context) {
+ v6 g9 [9 b* q7 h super.activateIn(context);9 }7 J8 A% G! O& L, A
schedule.activateIn(this);
- P4 q; b! z6 X, I" A Y return getActivity();
# ]& f0 d- p1 _( o }, X$ N2 U! Y8 c8 f7 }! N+ d
( |# F' G, r% _; x. [. g5 N6 |
public static void main(String[] args) {
* n l+ v' u a6 I2 G2 t' v9 A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" D, M( Y9 m% u; {2 O Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 F' }# }3 T- ^9 ?6 k
swarms.buildObjects();
6 f/ y) n& j- m7 G swarms.buildActions();
) j0 e* Z" K1 g% d9 D swarms.activateIn(null).run();
* S$ S9 B0 K8 ]" i! Z: i }
. ]6 |# V# e# K/ C5 d: X; Q# I7 E' l
% u& o* c* C) ]+ S} |
|