|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 h' y* V' }9 @' {
5 W$ _8 R* g: l$ Q! B/ T5 i- I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% d6 n9 P( l2 v: n& u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ O0 ` f: b5 p& r; b
swarm.SignatureNotFoundException8 t1 l4 M6 r% j! p/ P5 H
at swarm.Selector.<init>(Selector.java:76)
/ _+ ~1 }$ q! R1 w( c& e" n# k% h at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, u1 h8 U3 Q% ^$ T- M at ActionGroupDemo.main(ActionGroupDemo.java:67)" D1 V# B% C0 v( R9 i0 N1 V
$ s# m! q, i3 P v! k
( o" F) t, Q7 N8 \% e/ O
import swarm.objectbase.SwarmImpl;
, o! i% y7 R# N4 Z/ P# ~import swarm.objectbase.Swarm;# C& X4 `: c2 J: x" B
import swarm.activity.ScheduleImpl;
& o% o* x* T- I1 mimport swarm.activity.Activity;" q" P: h, F/ @8 P# p6 W- R( F
import swarm.activity.ActionGroupImpl;
+ U! h& e2 y, L( o/ limport swarm.collections.ListImpl;
, ~' k/ Z- v8 Rimport swarm.defobj.Zone; 7 X1 L1 D3 n* Q) v, L! L) ?6 {
import swarm.Globals;' a) r& q* w2 @& P0 v
import swarm.Selector;
E7 ~! U2 V9 N3 Pimport swarm.activity.ActionGroup; ( N" J8 E: o" N' l
class Agent {
' Q, V2 z# M, }; A char id;
) {: q, A5 _7 R4 i! | Q
# b" Y/ I. f% v6 n+ ?; Q ]* u Agent(char id) {0 I8 P5 b3 d7 c, a/ D, Q, t$ V
this.id = id;
( l1 a2 j* p. e4 o6 n }
& `: _5 u3 y, ? U+ E& Z% b
* @+ B5 }7 d, V/ Z7 u$ _5 x1 J1 ] public void agentStep() {1 H" G* ^% v# y" N9 G- c: L$ ?
System.out.println(id + ":" + Globals.env.getCurrentTime());
) K0 T! r' `8 \) Y. B8 k7 h }! t U" R1 U0 {) Z% ~2 z
}
0 ?' _0 T5 r Y& R9 c1 ^
$ [6 M5 w& b( H$ qpublic class ActionGroupDemo extends SwarmImpl {1 O* K7 a8 Y0 a3 x+ n
ScheduleImpl schedule;
! g, ~2 q# {0 n9 [. {" I! B' J ActionGroupImpl actionGroup;
5 o% ^: i& G2 k& | ListImpl list;5 d' R* V! ?- W
char Id = 'a';3 p9 L5 C: t7 [2 _0 w& L2 }
& x0 T4 z6 [* @2 \ ActionGroupDemo(Zone aZone) {
5 |% ^ Z4 N4 u: {; V' V super(aZone);
& `$ ~6 e. P# j list = new ListImpl(aZone);
4 e6 o, j) t5 R5 y swarmSetp();
, }. Z! L5 R# P actionGroup = new ActionGroupImpl(aZone);
: K+ }* n6 `; T. U7 J* j schedule = new ScheduleImpl(aZone); C7 I0 Z8 `3 v& \, O+ a) J1 G
try {
) `* G; k! U! J0 z+ E1 Y# B Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ e: A& o% K2 {" [, m$ I Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: t$ l) @- p7 e6 g8 `" u3 Y/ Z4 v
) W) W0 i5 }. F B
actionGroup.createActionForEach$message(list, agentSel);, P! g" j/ @' `7 d
actionGroup.createActionTo$message(this, swarmSel);
! A0 \7 T0 J3 \$ p+ \- } schedule.at$createAction(0, actionGroup);
6 C$ m5 n8 y$ p* d% B. p2 u# S4 E4 S schedule.at$createAction(1, actionGroup);; ~" j Q5 S9 e9 B+ M) G
schedule.at$createAction(2, actionGroup);- j) O+ l( w6 s" Q% P7 }
+ e% G8 N& }/ e8 l' @6 d( q
} catch (Exception e) {
# Q# R! O% R' i0 h e.printStackTrace(System.err);, n! @! @+ ^. f m6 D8 M) V
//System.out.println(e);5 O2 j* ~# t7 s% y
System.exit(1);
O1 M0 x3 |5 W C6 r }8 _, z$ ^0 E2 L
4 n, C# M1 R+ G; E
& ~2 P/ B2 z+ q+ c }7 U' _3 T5 r& f+ y& {8 H
4 g& J- ^- g$ |% T- \ D
private void swarmSetp() {
; C9 y2 s$ O, b# [! F5 c list.addLast(new Agent(Id));' c5 Q4 l$ V0 R9 C
Id++;& ^* H2 n1 b9 k- k4 A) Z8 T9 k
}
3 ]+ _4 Y* M) V& q1 p$ D. c
/ y. A; j* l! m) o public Activity activateIn(Swarm context) {6 @- o2 T& K k2 V
super.activateIn(context);
4 C9 X" ^+ _% x/ D& q; l! L schedule.activateIn(this);
3 N9 d" ]5 v8 Z2 l, z+ g8 }/ p9 b1 b return getActivity();# W3 N( X4 P% Q
}
3 y" R" i' [; o; f ~6 |' \/ G1 s$ P- P
public static void main(String[] args) {
! u2 [& s& m+ k& y: r. s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 b; Z. Q U8 w4 O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, u. r' Q2 Q0 O& V1 Q7 B* ~* N2 y swarms.buildObjects();, e0 `0 c; I' O9 N* A2 v2 @
swarms.buildActions();
& |+ J3 i+ z/ S+ \# r- \& X swarms.activateIn(null).run();
3 j& Q5 |2 G7 j+ V7 G }
- l+ i1 X( |! {% [; f5 ?, L5 [3 S7 f6 s/ c9 `: a. ]( |& P. h, m
} |
|