|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# U1 W, {5 |4 z! Q4 y. Y
3 `7 U. H4 M; V. m# c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' W0 Q" F6 A" @$ C( h0 m# z# w( @8 @5 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 I: \1 C& y' D8 a [1 p( K* D0 ~
swarm.SignatureNotFoundException
4 ~$ T# `- d$ s5 U" R2 @ at swarm.Selector.<init>(Selector.java:76)$ s, [& m4 A+ g5 m
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' D9 Z( w: l% n' N at ActionGroupDemo.main(ActionGroupDemo.java:67); J! D; `/ i6 s: m- R
. v1 @6 W5 o7 @3 {
8 u! r& M- V5 C1 n% z7 `1 F
import swarm.objectbase.SwarmImpl;
6 I( N4 B& Y' B( H0 Zimport swarm.objectbase.Swarm;
9 c! Y* O+ K6 o0 ?, d `7 limport swarm.activity.ScheduleImpl;: W$ k* I# `0 K/ Q# `# B
import swarm.activity.Activity;( ^$ g. \8 R9 D: A) w- V4 y3 z, Y
import swarm.activity.ActionGroupImpl;
3 ?) Q0 J, h7 N; w2 x2 O3 T5 z0 uimport swarm.collections.ListImpl;; ]! e5 p! C v2 |" R3 ?
import swarm.defobj.Zone;
0 p% ~+ g+ A# N5 m' X1 L+ i8 g* Uimport swarm.Globals;; F+ v/ [& v/ l; T( k
import swarm.Selector;
$ L9 D0 @1 L: R5 ~9 D8 j1 bimport swarm.activity.ActionGroup; 4 p8 u/ [) ^# H! q
class Agent {9 M; ~# v- q/ N" k
char id;4 {% b4 s$ D8 C. e1 u
6 x3 E+ T3 P |% X Agent(char id) {
+ u2 x1 ^' v3 Y8 }! T this.id = id;
, e& o: ?( a. p" a }
5 p R$ H( ^& _6 R6 @4 x3 ?
# K" k3 e2 ^& ]" d* k! N8 ` public void agentStep() {
; _8 p, Y% L2 ~ System.out.println(id + ":" + Globals.env.getCurrentTime());: ^% z# J. z2 O" S: R7 L6 K9 Y/ |; H
}
$ r: {7 `9 y1 q: v- e) e}' T: a. \4 o' h# S8 a; u! Z9 `2 E' ~
: V/ J( ~2 b( `9 \
public class ActionGroupDemo extends SwarmImpl {
: Y$ e: E, z1 s ScheduleImpl schedule;
$ E0 ~+ {) g3 W, Y! k& x. q5 { ActionGroupImpl actionGroup;0 d' h. {' ^ m6 i6 g# t, u! H# ]
ListImpl list;
T# `4 F6 y6 \3 k; A( L5 D+ C char Id = 'a';% t2 q9 K: ^; a" Z7 P! M9 ^
" H3 t0 u+ y4 @+ S, S$ K2 i ActionGroupDemo(Zone aZone) {, n; d6 c. K( i! v- @& n
super(aZone);
. ?3 S; ?& {, v, u- ^6 ]6 L list = new ListImpl(aZone);3 h& P: ?$ u# X- A* F+ u2 w: y; H
swarmSetp();
8 ]' Q0 i0 e& q( O. W# t actionGroup = new ActionGroupImpl(aZone);
5 \ s; c* O6 E) @# W$ u% Q schedule = new ScheduleImpl(aZone);0 N& F+ j& q! t+ t/ u5 i
try {
" v8 e+ O' z$ \1 K2 w* R Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 j3 I3 S; @7 `+ D; x! g Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ \5 o4 {5 e1 ?! r) T" ~" {
* s l0 M( j( k/ G- x" m J actionGroup.createActionForEach$message(list, agentSel);
O* C; G1 J& J, u3 b+ n actionGroup.createActionTo$message(this, swarmSel);
6 x( Z& g4 ~/ u/ Q, V4 R1 ` schedule.at$createAction(0, actionGroup);: W' L; n/ l5 D* v
schedule.at$createAction(1, actionGroup);
- j7 ?" K0 V. j5 n3 \ schedule.at$createAction(2, actionGroup);
$ x+ q `6 }0 I
9 O; H" y4 v7 [* ]5 O' { } catch (Exception e) {$ E0 B! t1 Y2 [3 s' `
e.printStackTrace(System.err);5 X/ y* A( W9 e
//System.out.println(e);
* L$ `% T( A0 J0 ^( l0 t L( C System.exit(1);
+ @/ D- G& A+ N) z0 D8 D: k* s }
1 k; N: i! V7 Y" C6 ?) V
/ U% _& b) q1 W' z' ~6 Z0 M' t7 f2 ~5 ]4 j6 U4 t: n# Z9 ^
}7 w# K0 N+ I, H* X# X
8 A; W/ M" ~$ G7 u& c private void swarmSetp() {$ v6 v t! r: f
list.addLast(new Agent(Id));
* k, ?; d$ _8 n. h0 O& q) Z3 m" E Id++;
2 l) u- C+ K! W7 L8 u }
9 i0 L7 y1 k1 @/ e- A
9 E7 j- r; b2 N9 X6 ? public Activity activateIn(Swarm context) {
6 U. ?9 p3 q1 p1 G/ W) g" R4 d super.activateIn(context);2 m/ ^2 t7 u, S6 v8 e) v' O
schedule.activateIn(this);$ s4 X( d, |/ e- n1 M8 g
return getActivity();
# w5 T( t% }: N0 M) D" f- p }5 V' }2 o, I2 h% b
' l K4 y0 C6 S M8 Z. ] public static void main(String[] args) {
6 x% {" H: G4 w- v* b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 {- x1 _6 c" a y5 h; P2 W- C Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 U8 `& p2 z5 E1 S6 | swarms.buildObjects();& y [; B- I. y. {9 q& O" @+ ~
swarms.buildActions();
+ k, G+ @; o b* _, V swarms.activateIn(null).run();; a8 {% Y/ Y3 E$ P e) `: o( p0 e
}, A4 p& [' v& r \0 O6 v' s
0 H- ^, m* b+ F2 v4 @
} |
|