|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 N0 V# H5 G" X# M. `
, }# {$ B& z7 }# l) d @- v* b. R; m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) Q2 ? ]7 o4 W, ^/ `# w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* W! m- Y. \$ h, [4 r6 h! ^
swarm.SignatureNotFoundException
+ `- m7 |: e) _) u0 V- p/ | at swarm.Selector.<init>(Selector.java:76)
H/ r# S9 ~4 I$ z" q$ A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( Z. j8 G8 e& x' b2 B: e+ h
at ActionGroupDemo.main(ActionGroupDemo.java:67)% U2 K0 s& i7 z8 f" f" s- ?, Q
, K8 E E1 H' ?. ~: h/ w, p9 b* m3 Z, r. F+ i
import swarm.objectbase.SwarmImpl;
+ j) A4 a5 p" S0 o. ~$ ^import swarm.objectbase.Swarm;
# r. v; X. ~) J- ~8 n9 {; Dimport swarm.activity.ScheduleImpl;* A; e) R+ ~& \. a. Z
import swarm.activity.Activity;
" w+ O, U7 ?1 \2 i- X7 G3 U$ kimport swarm.activity.ActionGroupImpl;" x1 B1 e/ l2 E8 R f E5 u8 u
import swarm.collections.ListImpl;
. s( C0 Z' k6 X0 uimport swarm.defobj.Zone; 3 n6 m+ _4 E. r; A' a9 C4 z& @
import swarm.Globals;
; [! v6 B }, l. H. h% |% R' K2 Wimport swarm.Selector;
7 R0 q$ G0 x. l0 [) r$ ^' Zimport swarm.activity.ActionGroup; & w5 {0 @7 `5 v, O
class Agent {
j% @# |, ]/ r, s2 C& B: ? char id;
; o( H% E% S# ?4 f( u: ~5 N& m% v: m, u
Agent(char id) {6 y3 H! O$ p2 h' u" y/ e7 w
this.id = id;
$ i# }7 y$ g# z) t9 [5 x6 M7 s }
# a" [/ ~2 k4 h- p9 Q; A7 w/ n. l
2 E2 u) F/ ^; @- ^8 y+ H public void agentStep() {' B! K' o. d8 j5 H$ r
System.out.println(id + ":" + Globals.env.getCurrentTime());
; S% A Y% g& c& n8 e }
6 i/ v2 G p% }7 j+ r* Y}4 f+ N1 K9 ~# L9 L
/ Y6 N( b. ~, V
public class ActionGroupDemo extends SwarmImpl {
3 s9 E6 M' w/ R! ?& ^" G; D, U ScheduleImpl schedule;; c8 r* I- l9 K! B
ActionGroupImpl actionGroup;' j, |- b, J, {; X9 b
ListImpl list;% D& L3 b! }4 ?
char Id = 'a';% u' w. {" h% o+ ]+ q9 g
1 k5 [3 {5 d1 y& n
ActionGroupDemo(Zone aZone) {
9 I( ?( v7 z7 m& y! B7 T super(aZone);
' Z3 B: O; K; a5 P4 Z) B list = new ListImpl(aZone);
5 D5 ~4 Z2 @ I swarmSetp();
) L5 g( _/ l1 f% C1 b. B& H1 c3 E actionGroup = new ActionGroupImpl(aZone);
/ y' `; `. s, ^8 s schedule = new ScheduleImpl(aZone);# m/ S4 T- T/ ~1 c$ F$ O% f3 V
try {, ?! A/ a! s& Y6 D* x9 q3 U
Selector agentSel = new Selector(Agent.class, "agentStep", false);; q2 I- J8 K* z d
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* U0 ~. }3 r% I G- f, d- P " p2 w3 c( }2 r( P. v, l
actionGroup.createActionForEach$message(list, agentSel);
+ s' P2 M* J& u" R actionGroup.createActionTo$message(this, swarmSel);
, r6 d3 b/ G! J7 s5 ?" s schedule.at$createAction(0, actionGroup);
: K, |8 |5 L* h7 Z schedule.at$createAction(1, actionGroup);
: s5 W+ L, O g" \+ K; e: ] schedule.at$createAction(2, actionGroup);
" b. q, q; P1 e. b9 c* f6 v! r4 Q }: ^4 f9 X4 R
} catch (Exception e) { |1 [! j$ F. e3 x6 e p8 k+ j4 F
e.printStackTrace(System.err);9 v7 n: n7 d W# F
//System.out.println(e);1 D8 S3 O5 d* q9 C7 O
System.exit(1);2 i% U" ?7 z4 y D
}! K- o. y" _/ A P& U5 J. o
% [4 n2 b0 P. W$ I* j0 Z9 b* B$ w* ]- n: I! ?
}
+ l; V, L3 l& N: h. C, z
0 E, {' V5 y$ ~0 v private void swarmSetp() {; | s8 d# {# U2 D, ~
list.addLast(new Agent(Id));
" s" Y; o8 o- W Id++;8 i7 E# G" Q. t0 b9 _8 ?
}- u S7 `5 S; l1 H$ q/ Y/ b7 }/ D
% @+ B3 B3 V) g6 D9 j
public Activity activateIn(Swarm context) {
. ~1 b' _6 v( B/ q% X# g super.activateIn(context);
+ d/ p; [! W7 e- z) z1 E' k schedule.activateIn(this);
( x$ `) p! d# u: i/ k/ ~ return getActivity();
9 r, q% L% e G1 H" s* Q }
$ }$ U. H9 O9 q
' E1 l# g/ w0 ~8 ?9 f$ u k public static void main(String[] args) {; U8 B! d( f/ Q" u$ p& t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 x- k0 a) i, O) e/ M; ? Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 X' U! [5 Q$ \2 N0 I
swarms.buildObjects();1 |/ j- N5 B( U7 E6 \8 \1 @
swarms.buildActions();
D/ Q) l1 Z* v- @4 y+ Z3 ? swarms.activateIn(null).run();
; D3 Y/ T* z0 o8 d3 R3 |; w }
1 w, K+ ~* `0 J8 R. Q, S
0 t/ f7 e1 r! u6 O/ R& u! b7 r} |
|