|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" y% W7 _% p+ u) [: P% ?; M1 x( _2 B3 D. v8 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 R+ N( k( ?- h+ I+ z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 I, h+ x" O$ d+ d K1 {0 G/ _swarm.SignatureNotFoundException' F+ \4 B0 P0 C# P" m
at swarm.Selector.<init>(Selector.java:76); C! T; Y% B! i! i5 k# H# ` C
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" g9 l9 ^6 f# b1 ?$ F' X6 [ at ActionGroupDemo.main(ActionGroupDemo.java:67)
( O0 U/ }) m0 D" {5 a: M5 v5 \4 W+ ~ J* ]9 S
; G& X) z* o& I# b7 x |: a. c
import swarm.objectbase.SwarmImpl;5 n9 Z- ^5 B2 K" d9 i
import swarm.objectbase.Swarm; K! O# {( h1 O/ e5 r
import swarm.activity.ScheduleImpl;# J1 V$ F8 I/ P6 M" _/ k
import swarm.activity.Activity;" m6 d$ M4 g) E4 |" ~" p" f* d2 F) K
import swarm.activity.ActionGroupImpl;1 Z! O; Z* F0 ]; ]) I
import swarm.collections.ListImpl;( o2 g9 p- R* O
import swarm.defobj.Zone; ! z# T% Z/ P8 {+ l v5 m
import swarm.Globals;7 Y9 D' I* O1 M& M6 d
import swarm.Selector;
0 t4 v4 S& ]6 \import swarm.activity.ActionGroup; ! e: Y( R# A. O, J a
class Agent {& {" g0 S8 O4 r9 K# t' r: F
char id;
& o8 t) J% K2 m+ k
% J, y4 a9 C: B+ i( u Agent(char id) {0 F- `1 A! ]$ q5 Q* B/ z
this.id = id;' i# H8 ~8 H+ d( h9 ]6 N: q
}
, C6 H% r5 v& y. T0 ?
. k; K) x1 V Z& h* d& b public void agentStep() {- s$ ]7 C& K. j! `! y. a; P, b
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ y l- B! E/ {6 g/ ]+ X }
1 M( o+ O, H! g7 w. q}7 S& y6 D- x; [' A
* R4 E7 y: W2 j) f |public class ActionGroupDemo extends SwarmImpl {
& V; d, Q0 \: `0 o ScheduleImpl schedule;# Z; G( f% E1 t/ R3 G
ActionGroupImpl actionGroup;
# x7 |- g* {0 Z% S ListImpl list;+ N% Y: E0 C% y# z1 B) l$ [2 L5 p
char Id = 'a';/ C/ e0 X8 a2 v$ V, J
6 g. W- X0 j5 E2 O
ActionGroupDemo(Zone aZone) {' n6 T/ B, y6 \) Y( ]6 o
super(aZone);; M2 _1 N8 r t5 q9 _# ~# H
list = new ListImpl(aZone);
. | o b% ]0 N6 b4 w! [1 F( i/ V swarmSetp();4 F2 J! P& B3 @, T) _ P z
actionGroup = new ActionGroupImpl(aZone);
4 q. \/ Q w G0 s. j2 K" _ schedule = new ScheduleImpl(aZone);2 C/ y. H, g& S- o
try {+ i2 e: T% E5 i2 s9 y. D B
Selector agentSel = new Selector(Agent.class, "agentStep", false);1 N" _! m4 I4 {( ~( \: V& N, C
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( J0 E8 {, |' u. n. A- }1 _! n) |6 u
4 J$ X( C" p3 `4 W( A actionGroup.createActionForEach$message(list, agentSel);
' w% C( L- V% v/ Z/ [* \ actionGroup.createActionTo$message(this, swarmSel);1 ?0 ~, z" [! U0 M( h2 C5 o4 u
schedule.at$createAction(0, actionGroup);
' Z; P/ }1 o$ r$ U+ {' y7 Y schedule.at$createAction(1, actionGroup);: W% N/ R+ y* u* R
schedule.at$createAction(2, actionGroup);" ^5 n2 M7 e8 }2 c `' [
7 N& R7 D6 _7 T2 P5 H& j) \8 B } catch (Exception e) {
8 q' C9 B& j& r e.printStackTrace(System.err);# b) j; a/ M5 ^; S& F& q) S O+ K% r( L
//System.out.println(e); g2 g0 w! {1 Z
System.exit(1);
) y* a- ~8 J# S6 l5 r) F }
) V, I8 W& c9 g! D
' J4 c: h2 I$ v% X
/ ?: R2 h5 r% V, V" W }
# `3 M2 g) |! t2 P( S. M8 g( p' o I. d2 _9 Q
private void swarmSetp() {& W7 o2 l7 q6 v$ G8 \
list.addLast(new Agent(Id));
7 @; t, s% ^$ G/ S Id++;. g1 H3 l, }. A* x9 ~; d( W
}% k7 |7 v" L% i6 T. p
- K4 X" \& h7 p- A" k public Activity activateIn(Swarm context) {
2 q4 E' I* i) S7 @ super.activateIn(context);
; ?- A( ~) A0 s schedule.activateIn(this);
7 K1 O$ J: H6 v return getActivity();
2 z; c* |5 ?: n. G }+ g, @* E( F+ w; {6 M# B. g
6 s6 J# Z4 X* @
public static void main(String[] args) {2 d7 F; I0 I; k. E9 C5 g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 u: Z$ K- m0 L# A9 d; R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! X9 S6 p. C$ N! c3 Y( X
swarms.buildObjects();' u/ H% H6 k# P" k! r3 U2 J! r
swarms.buildActions();
- A$ F0 N4 h7 u( y swarms.activateIn(null).run();
' J. F8 ~! F+ J9 J- O; x/ \8 ` }7 p: y M8 }! k
2 n/ ^- s2 {* M- Z3 i& ]* W6 l} |
|