|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ a; h. P7 \( U+ n& }% ]4 n0 @
* O$ k0 ^6 I8 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' L+ j. G2 d6 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 S: v8 ?6 H) d7 K% Sswarm.SignatureNotFoundException
. _, @5 x3 m3 G9 ^/ n9 X at swarm.Selector.<init>(Selector.java:76)' ^: L% ~) G' x" Y7 ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): O' N7 e- r4 J8 ^1 H @& c, M
at ActionGroupDemo.main(ActionGroupDemo.java:67)
) [2 u8 S. k M* y6 g) n k, M- A7 f' D& J* a, E
* h: _5 l8 R$ C$ @
import swarm.objectbase.SwarmImpl;
1 [& c3 v+ P @4 Qimport swarm.objectbase.Swarm;
* P5 F' \6 {9 o! A4 ^3 @ Gimport swarm.activity.ScheduleImpl;2 @- i/ |3 @' E( e t
import swarm.activity.Activity;
0 C/ y! g: ^7 X8 S1 jimport swarm.activity.ActionGroupImpl;' W! g3 s# P1 _: s
import swarm.collections.ListImpl;+ @3 M5 e+ o8 w1 c2 M% ~; g
import swarm.defobj.Zone; ! R0 r2 Q: B/ Z+ P
import swarm.Globals;
5 z. n4 p+ x0 L6 Y+ O0 I( vimport swarm.Selector;
( S0 D3 R1 T6 W+ h, `" bimport swarm.activity.ActionGroup; * ^6 c& u2 L* v
class Agent {' [/ ?2 ?8 s: ]! u+ Z5 Y
char id;
* ]5 Z# d+ B6 x6 i
* C/ A) m/ d4 X1 E Agent(char id) {8 n) W. o. V- z& s% H4 `5 w
this.id = id;4 W' M; |* {* {& |# B, c" u; @
}
) ]+ t1 ~) L/ z) M2 n1 m
# V9 d) Y2 s1 i$ A6 M3 x1 T7 i! b public void agentStep() {- V" z; P2 B; t+ N3 o7 e
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 |1 c) r! {. d/ h; d }7 {, e5 F8 N* A. T& O0 _
}
3 B, Z/ @" f( B
( Z( L7 P: U0 m: K) fpublic class ActionGroupDemo extends SwarmImpl {
6 U6 E% B2 c( V2 T$ J) [# J o! Q* a ScheduleImpl schedule;
1 k$ S) B, V" `, e% k4 X4 H ActionGroupImpl actionGroup;
& [7 }( q" ?9 S+ p ListImpl list;
' K$ | N5 V8 w! b- B! Z. v char Id = 'a';
" w" u q% Z/ Q2 X/ ?* z
' O8 B7 z# c- E# w0 R( I ActionGroupDemo(Zone aZone) {
6 D# G0 y$ G# r3 j super(aZone);. Z* k/ z' i; K9 i- l0 e+ p7 k4 d
list = new ListImpl(aZone);' H4 \/ s4 V( v
swarmSetp();: w# R) {) z5 n) O+ N2 j/ K
actionGroup = new ActionGroupImpl(aZone);
P& O2 j* }# n" r7 q schedule = new ScheduleImpl(aZone);
7 S" t9 ^ j5 @' m try {
, f$ B2 `4 N' Z8 v+ @- a% D- ]; w Selector agentSel = new Selector(Agent.class, "agentStep", false);1 c& E/ B0 T+ v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% W5 X" _ |8 c; H
9 W0 A* ]/ `) a" Q/ z" ^( _1 l0 A actionGroup.createActionForEach$message(list, agentSel);
+ ] k5 _2 } a3 \0 Z actionGroup.createActionTo$message(this, swarmSel);3 _5 c" `* K8 z3 n! X9 n
schedule.at$createAction(0, actionGroup);
$ p$ y6 D9 y- x; R/ s5 ^; x schedule.at$createAction(1, actionGroup);9 s6 ~! _* `" L, A6 x
schedule.at$createAction(2, actionGroup);
4 Z4 q* M" T9 e7 c0 [+ B5 q4 u; F
} catch (Exception e) {
2 _* ~$ j3 R5 U& z% X" z e.printStackTrace(System.err);* D% ]( z# U p. V" [) }
//System.out.println(e);
8 l, z Q3 S, i. D9 Y& m; v. g" N' { System.exit(1);" ^ K3 Q% E+ K& \: B9 |
}
. z0 L$ |9 l0 K: |' n3 l+ p7 { K; m* d; U$ Z
0 K& L$ A/ Q9 L. P) { u- X( C
}
( B& }! V* s' j, ?! U' j% Y# U* J3 J4 m
private void swarmSetp() {+ e5 s" ?9 w) T, W }* Z
list.addLast(new Agent(Id));
4 _8 R3 O1 ?6 `2 a; l: a8 g( `% c Id++;
- I t' p6 l S }7 ~* S3 m; j2 p# i/ d# ^
2 R. P, ^: k4 u% Y2 H* o public Activity activateIn(Swarm context) {" `9 b; }9 k) a7 }+ L
super.activateIn(context);: q0 Q- _0 L+ q4 c" d
schedule.activateIn(this);
$ ^1 V/ f$ U6 R: } return getActivity();
; |/ T$ m7 k2 m; J }
m+ b/ L8 Z C0 z6 q7 E! e, b7 _, I4 b$ O+ Y- H
public static void main(String[] args) {0 M5 e% y, E: T7 U
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; ?( D) Z0 X2 ?1 |
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% g4 \5 @% k1 ] h
swarms.buildObjects();* j3 j6 O, ]/ a& g& f, g3 O
swarms.buildActions();
/ m4 s& f" }% x8 W1 X swarms.activateIn(null).run();. E! _* _( W ]8 a2 Z
}. Q8 L+ K6 c* A2 Z% {; n4 ^
. Q% |& y" u& Y L" k6 b} |
|