|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / g2 I5 f% s& d) _2 P h H
8 i/ M' ` Z; r; e3 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' R& G7 X1 C1 l; a5 O4 e# X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., @7 f) @; L. b* Z* T* e! Y' T# E
swarm.SignatureNotFoundException
7 i; E9 \9 V" a; Q# J; W2 ^ at swarm.Selector.<init>(Selector.java:76)+ Y7 ]# ?) G5 t
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): Z" A+ C/ Z: D' | Z: V4 i1 @ A0 Z! v
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, d/ D$ ~* h$ E- v9 P2 j1 \% x- Y
; K; Q9 T% [# ?- j1 i& W
import swarm.objectbase.SwarmImpl;0 `2 d1 F. d& x) n8 a
import swarm.objectbase.Swarm;
' t+ S& D8 e1 g1 cimport swarm.activity.ScheduleImpl;( {4 H' F! S6 t& @( o4 ^
import swarm.activity.Activity;
# r/ i' e4 M5 V/ U, @; }import swarm.activity.ActionGroupImpl;
) ~$ i$ t: `5 Y) Eimport swarm.collections.ListImpl;% M" I) ?) ]" P! ~1 F
import swarm.defobj.Zone;
$ n2 T E' F4 B T0 g$ R3 ^: `import swarm.Globals;/ u/ q8 V( Z8 T2 q& ?+ [
import swarm.Selector;
( g* `! x& h* w8 A8 pimport swarm.activity.ActionGroup;
# { Y/ d* A$ D2 eclass Agent {3 i( s9 l* y- g5 I1 f
char id;- i! k* M3 T4 h5 _3 {8 h( K
1 v+ D# A) A- }4 U8 a: H9 e( M Agent(char id) {
$ d i% A0 ]: O1 D this.id = id;
* @2 n/ g6 g* N& {0 X/ r" M2 T }
+ B: v' u1 F# _6 b" d: ^0 y# D) ~+ t: r J1 S# U
public void agentStep() {
, D6 s: O/ D1 _0 T System.out.println(id + ":" + Globals.env.getCurrentTime());7 |& D3 y. w: F0 H8 v. C' l
}9 p2 S6 T3 D; B' K) U' ^. i
}+ Y- s) ]; M" \
. _5 @# ]0 Y1 F3 S4 P
public class ActionGroupDemo extends SwarmImpl {
0 f& S2 C! Q7 S1 W( g5 \( G' w ScheduleImpl schedule;& f- o* ^) J# I0 N' q" E2 A
ActionGroupImpl actionGroup;0 `6 r/ X! v6 U1 ~" K9 ?5 Q0 Z
ListImpl list;
! e0 }0 |! c% @4 @5 \ char Id = 'a';3 |" s; _6 J4 {$ p
7 z: Z# z; h/ C6 e5 E7 [ ActionGroupDemo(Zone aZone) {8 @5 b/ H1 C* @, [
super(aZone);
. p; u; Z$ B7 J8 A; u% Y8 Q list = new ListImpl(aZone);4 E- O) w7 _% T' H2 \
swarmSetp();+ E2 H; J, {$ J S
actionGroup = new ActionGroupImpl(aZone);( N$ O6 q4 l( ^6 r8 v/ N: t
schedule = new ScheduleImpl(aZone);4 [% q2 j- Q2 b9 C, {# t3 m
try {
! y* T4 X. j7 l3 v8 F, Z Selector agentSel = new Selector(Agent.class, "agentStep", false);
" e! \5 u/ R* _# d4 }' ~! ^1 u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 u; O' {, B [9 V# A
* @6 e8 B7 ?6 O) U" { actionGroup.createActionForEach$message(list, agentSel);
* w$ C! \. b7 L" ` actionGroup.createActionTo$message(this, swarmSel);
3 P) ~( w5 J8 |- y3 } schedule.at$createAction(0, actionGroup);
" F, T. y2 I% U: ~* P4 V/ d schedule.at$createAction(1, actionGroup);
) o, C( r' I3 n! i6 \2 m e" _ schedule.at$createAction(2, actionGroup);/ p( V8 f" a V1 ]/ v P
. V# _* b* y9 {" P$ M& F
} catch (Exception e) {" {; `( }5 d, B# u$ h
e.printStackTrace(System.err);
- k3 i, {+ b+ z9 ^2 X9 w //System.out.println(e);4 X/ b- C2 V$ p5 Y
System.exit(1);0 I$ _6 l9 O& H q8 i* |2 _$ y. ?7 M+ `
}# ^# F: \" y" G) ^+ A/ d
: C9 u2 ?+ k# C9 }
0 h( T2 I+ b0 A
}
( q0 g/ I0 Q$ @, A! ~- q
" y/ j8 T* }4 @; H( s# L private void swarmSetp() {/ `8 h- o( H" S" }) A, X
list.addLast(new Agent(Id));" O4 D' F% J0 P# Y, H
Id++;& _% x J f p% o8 N
}
) P g; a, W0 }9 X. M+ i6 m, {4 `3 U1 t2 F7 n) c# y
public Activity activateIn(Swarm context) {5 e; t$ v( E1 s! m, l
super.activateIn(context);
' p: b; J! c( m4 A, x& N schedule.activateIn(this);/ N; n6 T) P( j& P& t
return getActivity();
& J m) Z* e+ V# j6 F }
) T+ P) |# \# g5 H0 H5 ^; z/ y" M# ^" j
public static void main(String[] args) {
6 X+ b' O) D4 c$ `& J Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* `( ]& \0 ?9 ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 \. E3 y/ x! ]1 S8 E2 I- V% [
swarms.buildObjects();
/ z: g! t: I3 G swarms.buildActions();, Q6 t. x# _+ B) n. B# S
swarms.activateIn(null).run();$ `2 r) K# z8 i
}( X1 t( S0 b# ]
, R, T/ X6 w1 E% J- m G} |
|