|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# H& m# @9 J. }8 D0 J7 E% W1 z: ?9 d) O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' @8 q& P& e" V7 E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% N' B: P! I% ?2 K! n
swarm.SignatureNotFoundException
6 N8 P! D* ?2 z& O, } at swarm.Selector.<init>(Selector.java:76)$ S5 E2 D0 K+ _& e/ K
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 R& J- Y' e* Q/ z# P; @7 U& R
at ActionGroupDemo.main(ActionGroupDemo.java:67)
) Y9 w0 [; y0 _* X# K1 c0 E" T A% s4 a: M2 k
" Q8 H( C: Z1 V; A" P8 v
import swarm.objectbase.SwarmImpl;
. R( g5 k; B; m0 j9 ~import swarm.objectbase.Swarm;+ \ W. a$ x+ V
import swarm.activity.ScheduleImpl;: q$ _: q, E# H; p4 V3 j; \$ ?
import swarm.activity.Activity;3 o8 G5 a1 L5 L! o7 Y& X( k
import swarm.activity.ActionGroupImpl;
# ^# _1 U; O1 E- Yimport swarm.collections.ListImpl;; }% I7 L2 Z9 W. H' W
import swarm.defobj.Zone;
' S5 V8 v- z7 e& f, T. Zimport swarm.Globals;
5 F. T: `* ]2 G9 T6 M: a7 b! k5 [, ~% limport swarm.Selector;
/ z& U0 S3 c: k( |import swarm.activity.ActionGroup;
5 o5 ]3 @% s9 _) L7 Q" i6 aclass Agent {2 U1 W3 d0 F# P$ g Z# K
char id; M* V3 c y7 C0 G
; y* w R) h2 K! Y/ ?) v Agent(char id) {
2 H }* u8 E% @% O3 P this.id = id;
( o6 J% ]+ K& m! E }
6 z, M( E9 I3 ^0 \# U: W: M! U6 Z! `) |7 b
public void agentStep() {+ I8 t0 |2 G3 c
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 u( B m q3 M+ _* p. i+ `1 T }
4 f5 L ]% r/ \' t. W5 O- \ C}7 L% R5 G/ f- o+ f {
# S7 w6 F) P7 {" o( `& P- L7 p2 Q
public class ActionGroupDemo extends SwarmImpl {* \. t/ p7 m2 w3 u' A
ScheduleImpl schedule;6 r9 o5 S( U% r$ ?
ActionGroupImpl actionGroup;
: i, j2 L6 p( e1 F2 M5 d) ~ b ListImpl list;
! I+ t. x# p: l7 b/ Y char Id = 'a';! ^5 @. V8 O+ n# Q4 P, c8 a
* \- ]9 W3 b' c& X/ X9 r
ActionGroupDemo(Zone aZone) {
, Q! @0 ~7 S2 v) a. W$ Y4 d super(aZone);
2 G( L- p4 g: F4 V! ^ list = new ListImpl(aZone);3 K$ j6 n7 r% j$ X4 ^6 W
swarmSetp();$ N. }8 s' @7 _% K3 `; {, e. o
actionGroup = new ActionGroupImpl(aZone);
% j) I- L6 v) E/ `" ^1 N schedule = new ScheduleImpl(aZone);) v, y7 b6 x8 W% Q1 X2 _# }& ~; T
try {
/ O/ W6 v* h& x$ C5 S+ m Selector agentSel = new Selector(Agent.class, "agentStep", false);/ s! V- v1 _5 W' L3 {
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- S1 M) Y1 `, m( g' g " h, c& R, B: B
actionGroup.createActionForEach$message(list, agentSel);
/ J& p1 M1 F" V( R actionGroup.createActionTo$message(this, swarmSel);, l2 D$ H- E& W3 z+ a" _
schedule.at$createAction(0, actionGroup);
/ y5 y& m4 E I3 U' x7 P" G- O schedule.at$createAction(1, actionGroup);
( ? E ^ T6 G2 ~7 T schedule.at$createAction(2, actionGroup);
- {, N, r6 W5 R( G! e) ?1 s- A6 k
P, j, c1 j4 k1 {7 @+ t! M& h5 [ } catch (Exception e) {& Y# f+ F Q( T! R# V, d9 P
e.printStackTrace(System.err);7 G1 _+ ~( `! r
//System.out.println(e);, ~: C9 R {' z
System.exit(1);
/ ?2 h7 N7 C9 l/ R4 C1 H, S& h }
) O. V, |8 O v6 d. S) [3 C
9 F: Y+ j& ~$ W0 B/ B `2 V; `4 H/ d& w% q
}, ]% y, Z5 r, G- n* ~
" I% |2 N' S+ G& b
private void swarmSetp() {" X) [1 F. _8 K u- [* N$ d; J
list.addLast(new Agent(Id));
0 @# h+ R0 j0 W Id++;
, ?- a- f' Z, s2 u6 y. t }# q6 p- n& z7 b+ c; r- V
, c% @( d0 K; K% ~( e7 ~! {
public Activity activateIn(Swarm context) {
! ~, U# L/ H. o6 P9 B! g# H super.activateIn(context);
6 w# c; }$ f0 z& w) v* m( Z schedule.activateIn(this);
( v2 ^+ ~; i- B C6 { return getActivity();* ^ J( O% r7 I$ @* Y4 q' a
}4 A, X% M3 t* J" x, X k
: d l2 c7 g# q. \
public static void main(String[] args) {
9 ^ ]3 J& Z5 C/ ]# ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 K4 R* g q) f. V3 Z5 i- ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' c+ L. X# S' V
swarms.buildObjects();- |! U: h' _; t7 V
swarms.buildActions();
% l0 V% y1 v, h- D& z) K swarms.activateIn(null).run();
) j; o2 T! p/ z. {0 j, r }
& p) s4 L) u# r% [9 _
+ i' M, ~. L2 T, T0 R$ p} |
|