|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 ~, a: E& P3 g3 w R
" h9 t% |9 w0 \- f, f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' e2 _9 M# H" N A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 n3 W& y# c& F1 V& ~1 l% \# Z
swarm.SignatureNotFoundException. b7 T- D& f; |- e' s. Q" e: Z
at swarm.Selector.<init>(Selector.java:76), }! j) v- X" r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 V' O0 R' I6 j; y
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; u& n. y( k6 Q4 V+ h" W$ L2 K+ @1 ]* h: \( K4 y# g& Q
' [" v4 L' F+ S6 A6 O6 c) q" G
import swarm.objectbase.SwarmImpl;
3 H" u1 l6 |% F( limport swarm.objectbase.Swarm;5 d7 R* Z- t4 Q% \
import swarm.activity.ScheduleImpl;; S Z* z# c1 q- `3 z
import swarm.activity.Activity;- L! y! ?7 O1 ~3 t4 C( C
import swarm.activity.ActionGroupImpl;
1 B$ h r* W2 k+ t# Gimport swarm.collections.ListImpl;
; S {. O/ x" ximport swarm.defobj.Zone;
! o% F2 T& ?/ V$ B# n! k5 Yimport swarm.Globals;. ]9 W1 q+ W1 ?5 A# V- R8 n$ y3 w" q
import swarm.Selector;
- \+ N. [8 a3 `import swarm.activity.ActionGroup; . u" g. Z' [) E& B- { l
class Agent {
# Q& H r0 ^& O) m; D5 N$ ^ I0 ~ char id;' i( e; A+ c1 f9 u* d
& f, q% I5 c5 y8 o- m. J Agent(char id) {
6 z+ i' G1 u+ B$ F2 L0 J5 P this.id = id;; ^! a1 C' [ ]7 z: C u
}
3 _; k# r) g# s: E- c# M; A1 }/ _4 g* |( Y6 Z+ ]
public void agentStep() {
4 `: b0 p, H& I+ |! ^ System.out.println(id + ":" + Globals.env.getCurrentTime());$ p# N6 X j9 E) S- x: f
}. @/ G/ B0 r) C. H( v. H1 X
}
# r' i1 F$ R `4 o: }4 ]( _ x. F" e2 s* G K
public class ActionGroupDemo extends SwarmImpl {
8 w: j) Q& x9 W; Q! v' e4 e$ r& u ScheduleImpl schedule;
; y" U( j/ l5 @( _# f ActionGroupImpl actionGroup;
. K% Q3 i; M3 S7 w; J* t ListImpl list;& y' H8 ~! C; m8 n; ^* j
char Id = 'a';' c3 L: z% A {3 J9 i
8 t' c7 P0 P# q+ ^2 H8 E, O2 E ActionGroupDemo(Zone aZone) {7 T* g7 M' V9 W5 ~6 J
super(aZone);
) p& a: r% Y, h) ?# f R list = new ListImpl(aZone);9 E* B6 W* M" }$ U0 T
swarmSetp();
* F& {) |& p! { M; X+ t: R actionGroup = new ActionGroupImpl(aZone);
7 H( S. n, H3 E schedule = new ScheduleImpl(aZone);: N+ @: d% N3 p q0 k% k! u) D d& L
try {8 T0 `" {2 w$ @- E k
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 f; J2 B. Z9 ` w) | Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 ]6 n5 ?8 W1 r: C3 D: P% V
( O6 W P: k7 U8 h4 Z; h actionGroup.createActionForEach$message(list, agentSel);" F+ ] o( F: b* K( C
actionGroup.createActionTo$message(this, swarmSel);! F6 W9 U2 U: m
schedule.at$createAction(0, actionGroup);
- i( e6 c% l6 @9 h$ h schedule.at$createAction(1, actionGroup);
0 h$ C9 }! c/ o% y! R" G: G% k schedule.at$createAction(2, actionGroup);
# j$ Q h8 y6 G0 E
6 c) d! z0 ~5 R! R0 ~% R } catch (Exception e) {
" u, K8 Q2 w% C4 \. i# |5 D6 d e.printStackTrace(System.err);/ m% b- I o ?1 l. r
//System.out.println(e);
5 u/ L6 L$ f: O7 N9 V9 ^9 f4 P7 [ System.exit(1);
* \- T) z( g: Q. q4 x }# p5 V8 W& H/ F7 U ~
4 p5 H2 s, G0 @$ M
9 K+ ~# r, g& n: e }
, F9 ] u2 i' U( `% n6 O
4 S: v6 b/ j! A. m4 w) W private void swarmSetp() {+ @2 j1 c& L! C, c9 |$ R4 D
list.addLast(new Agent(Id));
o3 P6 `' o9 J Id++;
9 R$ ~; A3 T- ]( g% b }- C0 ? T! g* g/ M3 F+ G. y
' {7 S6 S& j+ b; Y3 e
public Activity activateIn(Swarm context) {! g7 w G+ P8 I7 M
super.activateIn(context);
) a1 R0 @2 H/ r- S, ] schedule.activateIn(this);
- G/ J6 S, ]1 R; A return getActivity();0 z- @1 b! r+ ]8 {$ c0 J
}6 }$ E1 @( S* n+ w. ]' v! T
: \3 o! p5 Q9 f* h5 F
public static void main(String[] args) {
# k7 O# E) [+ Q( G* I5 N0 l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 l$ V! K; G2 b6 w" G; l Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 v0 x, u5 ?% B S1 o* D
swarms.buildObjects();* N, z8 ~+ }; u0 B
swarms.buildActions();' Y9 y/ K% b: s; Y* G% k, O
swarms.activateIn(null).run();; U E9 r$ l# B
}9 H, i% `; R) A9 x; S3 U
* ^- @/ J! J! G1 b5 t} |
|