|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - e! j6 G7 \9 R. |+ c
' g7 @2 O( k! g6 t, n! p! u! M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ Y& f6 ~) Q. A7 w/ ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 O3 e: {* v. nswarm.SignatureNotFoundException& v/ V! O3 A! d$ j1 M# w
at swarm.Selector.<init>(Selector.java:76)
% e, O, J0 h+ l4 ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 q) |7 E+ i1 S$ a at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 o- k4 W0 g1 @ S; G$ b$ D% N) c1 a2 l4 \+ I+ X" c! ]
: f- B Z( n% g& t! X, _% w9 }import swarm.objectbase.SwarmImpl;
$ y3 R; ~! O" h7 U2 timport swarm.objectbase.Swarm;* v- K; s; u4 W; P4 E
import swarm.activity.ScheduleImpl;
2 F% T) j: c. d# p2 P0 U0 _% Wimport swarm.activity.Activity;9 t9 k/ `/ H. Y" B( z# C
import swarm.activity.ActionGroupImpl;
" \3 n7 u& O! ~+ X5 N6 Yimport swarm.collections.ListImpl;
r. N" C$ J3 l, J; k( Wimport swarm.defobj.Zone; 6 f0 B/ ~ Y |- J b- w2 C2 T# e0 T
import swarm.Globals;
3 K8 r& B% t/ x+ E2 Bimport swarm.Selector;* }' r4 @8 H& D/ `5 D7 t
import swarm.activity.ActionGroup;
5 e% P6 y) j; o b$ k/ f1 Bclass Agent {6 w, ~9 D. s. `) d1 p2 F
char id;
3 x! S0 b% a5 O" |1 }( Z2 ]& e0 S* ~# p7 O1 U7 \
Agent(char id) {
7 e5 x6 \$ Q h6 _1 g( z this.id = id;
. ]; U B4 e$ C }
4 ]. _6 r0 b- W7 T1 \
& g; {, L; ~- g5 m" N public void agentStep() {
8 V) z H1 Q% a g9 ?& T System.out.println(id + ":" + Globals.env.getCurrentTime());
7 N+ d& P' @6 @7 E, e9 s7 T/ x }
2 z! d* z1 B, D- K/ p0 ?, ?}! n. b& M* J# Y9 H
( ]. ^ {% B$ _; j3 Y6 D
public class ActionGroupDemo extends SwarmImpl {+ M9 W* r$ K9 _5 k- m
ScheduleImpl schedule;, U$ ]/ w4 d; V/ W- F
ActionGroupImpl actionGroup;
% G u" T3 Q) z" [9 m ListImpl list;
! `: k) p* w0 u9 t0 ^ char Id = 'a';. c% s1 H# Y2 J* ^. K
; t: G5 L* o+ L* ^3 W) K
ActionGroupDemo(Zone aZone) {& s7 f: k! I& W! t3 o5 L
super(aZone);
2 [3 c: I/ _! H7 k6 ~ list = new ListImpl(aZone);9 o0 C) j+ ]3 ~$ V. v' I: B( v
swarmSetp();
) @) {; ?/ |7 S3 F& r actionGroup = new ActionGroupImpl(aZone);$ u2 @7 @3 [) k6 ]/ U/ F
schedule = new ScheduleImpl(aZone);8 j' m" V9 e- u( n4 c( f3 d
try {
/ S5 Y/ X9 P5 g/ F, J" _5 t Selector agentSel = new Selector(Agent.class, "agentStep", false);
% g7 s# a; v% H7 m0 P% i3 u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' `2 A% t! D2 U {- Q' [. d/ E ) A& i! A0 U% O( }. U
actionGroup.createActionForEach$message(list, agentSel);
4 p3 G- }% D# I& M* f" o8 C5 j actionGroup.createActionTo$message(this, swarmSel);
' V! k, `3 u8 Y9 R! Y schedule.at$createAction(0, actionGroup);3 t# w, `6 d, e O- p B
schedule.at$createAction(1, actionGroup);6 Q) {; g9 R8 t$ s8 F
schedule.at$createAction(2, actionGroup);; j/ p% l/ A0 A% h0 J
- B5 \ j4 @( k3 L2 S( k9 k
} catch (Exception e) {7 q; u% N0 G9 @. c, k: {
e.printStackTrace(System.err);0 ~: e7 A1 G% |
//System.out.println(e);, f9 s) z- ~. p$ Q5 N
System.exit(1);7 C& S7 ?) Y$ p' n/ c2 o
}
& W a$ p! s+ k. P9 x6 S0 i0 R' n) H" b, s# g
8 D3 m6 a8 p0 a' \/ q
}
7 p9 c0 w% N+ A) R1 H! L( T
$ G6 l6 Z: P0 s0 q private void swarmSetp() {
4 r" g; M3 T/ X6 T: W- | list.addLast(new Agent(Id));
- O2 I9 } N4 S$ R, \ Id++;
' l" N* p, T7 Z% h% |: `# @) u }
1 l3 p; `- U( l) O7 s0 {# m: J! \; Y
public Activity activateIn(Swarm context) {
* g: Z" ~, N3 e# n! E0 l super.activateIn(context);1 C- u( u' D4 h) u- z, x7 h6 V
schedule.activateIn(this);* Z9 Y% j6 M- _5 N
return getActivity();% s* P1 R [$ [& v; u, c2 F) Z
}) J8 y, x% F- W, o) s+ @& z1 o: \. t
: r8 ]+ }+ R8 l# J) d9 Q* H
public static void main(String[] args) {# B+ S9 \: Z5 i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
w- a) v0 y1 r( E5 J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 |1 b' v# W- o! b. Y2 k swarms.buildObjects();
# i S" D$ {" b swarms.buildActions();, K, ]' V5 k( U$ v
swarms.activateIn(null).run();) F0 k% D% \% S0 O- j. \- k
}/ a5 e4 G. _$ B& y4 C
: z2 ]* E$ h, @7 e2 H# Q M
} |
|