|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 ]" a _. h1 D" q" v; c2 Z, o- f/ D6 G9 N: Z" A0 D9 U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# X% D, r$ _% Q% |$ T3 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. m2 x+ U2 _: a! c
swarm.SignatureNotFoundException
; W# j r. ^, N; ~+ N' R1 D* ]- _6 ? at swarm.Selector.<init>(Selector.java:76)
3 G% B4 J9 v7 c; H1 V* m* P at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) S, \( E& f0 p1 Z' G1 _
at ActionGroupDemo.main(ActionGroupDemo.java:67)& `/ E4 C; u( B6 {) s2 s* `
0 s% W4 |. d0 C% g) J, f* j( M/ k' x' v/ I$ w7 Z5 Q
import swarm.objectbase.SwarmImpl;
$ |1 s& {7 g! mimport swarm.objectbase.Swarm;; ]6 X* b/ k9 S; y
import swarm.activity.ScheduleImpl;
5 L: p Q! ?8 S% G8 a- [- ^9 vimport swarm.activity.Activity;, `- `( g$ y9 i' U0 W3 Z9 P9 u
import swarm.activity.ActionGroupImpl;
' V# B O/ L& D' g) d& _& L# c3 Limport swarm.collections.ListImpl;- @" c! c5 i# b& M# R
import swarm.defobj.Zone;
+ ~: [. b- k6 a& s8 x) G6 o- Zimport swarm.Globals;
7 Z" c. m, C" Z7 y1 P: wimport swarm.Selector;
2 O$ l8 M: i, `7 E; oimport swarm.activity.ActionGroup; & N( Z" e5 R+ u
class Agent {% R$ l, N6 l, w
char id;
- u9 r0 Y' f: L
& w7 i# m4 ^2 L5 _. K; X Agent(char id) {
9 {* r) l- |5 I1 w- z, B u7 K" s this.id = id;
# i5 C/ x2 H+ ^! m* J. x }2 z# K5 I7 A! j
1 s# E6 K W" C+ R& n- A
public void agentStep() {# t5 r6 |9 G, ~
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 r% ]- n/ S7 L7 \( J; M }& d9 \3 m% z9 g) G/ F
}
5 P* y/ T9 R8 [6 K4 S; s9 F, s2 Y: X1 Q- K/ |
public class ActionGroupDemo extends SwarmImpl {/ E: L- ~2 ]. B
ScheduleImpl schedule;; o. Q. [1 ^9 E& D3 v5 a, b
ActionGroupImpl actionGroup; K6 e4 ]; b) n7 m
ListImpl list;
# U2 C! x/ X& Q' w; s char Id = 'a';
5 }# S0 Y! h8 ]* {( w1 {3 ?% V4 h% v6 Y% o
ActionGroupDemo(Zone aZone) {
! l3 g$ k" K* n$ n. G super(aZone);
, s8 Q8 z6 p8 R& Z# V4 S( j list = new ListImpl(aZone);6 J. a3 C7 K1 S# i. Q% ?/ q3 h
swarmSetp();
' [& u, d3 M- H. _5 c# T actionGroup = new ActionGroupImpl(aZone); ?# |2 ^) j) @2 o0 ]. s7 U! F4 A" z
schedule = new ScheduleImpl(aZone);
* k9 t6 w$ ]- e i try {
+ B- X3 w0 {: J& X- ^8 a: C Selector agentSel = new Selector(Agent.class, "agentStep", false);% ?' d4 U0 W+ \6 d6 o
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 P' j7 R; |" ?
8 Y9 P9 b: b! n# J6 Y actionGroup.createActionForEach$message(list, agentSel);
3 p ]/ I+ d0 n1 ~, _ actionGroup.createActionTo$message(this, swarmSel);* t* f8 Y ^8 m2 t! E' W
schedule.at$createAction(0, actionGroup);+ \9 N% e3 X+ i" k2 U
schedule.at$createAction(1, actionGroup);: C" n: x+ [( l% ^( ~
schedule.at$createAction(2, actionGroup);
# J& ? m. A! b
2 B/ n& D2 F" R2 D } catch (Exception e) {
3 Q( r% c1 M, H& T e.printStackTrace(System.err);% F9 U+ S3 C! K. c w
//System.out.println(e);6 s' }' F- g5 Q1 z, D o
System.exit(1);# e5 k5 y/ ]% P: x* d9 z
}
; Y+ ^7 w, i! D/ t; b4 w; ]( @ }5 M0 O) h
' M, Q% s+ ^9 X- i
}
: a; w& A) y% a+ D4 N& }; ^" O6 i* k5 p2 K; d" f
private void swarmSetp() {
& M: ]- k' F3 c3 x! h1 A% k list.addLast(new Agent(Id));% b& S3 p0 V0 E+ M6 q$ z, a
Id++;5 T1 u1 ~" i* c! Y4 I6 B. i' ?
}
1 j7 I, E* C ~6 P) ?8 ~/ l! {9 r' Z* g- a8 k" q A
public Activity activateIn(Swarm context) {3 Q. _; D c& W
super.activateIn(context);) n+ J; \6 w* S: I' g8 q5 F
schedule.activateIn(this);
7 w, V A& B- g return getActivity();/ M& B8 r4 t3 t7 m
}! L+ E" ]% f# x8 `
2 k3 k: {3 M5 `; v: ~: i
public static void main(String[] args) {5 w3 ]9 Y K7 ]8 t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 r4 U' |3 `+ X0 T ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ B; q9 [8 K6 [7 }
swarms.buildObjects();
$ @% N* d, c& t! r/ v! l4 Y swarms.buildActions();% [7 x7 }5 W$ y( m
swarms.activateIn(null).run();7 n2 n3 Y, D- l+ G+ E4 Z8 j% L0 N
}
# ~$ R/ U- j- I5 A
8 J3 p+ f$ M6 Q$ L7 f! x} |
|