|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, D/ q9 y& U; u9 v$ a' U$ N. U& k* w1 l4 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! A) I: @' N7 c0 t% l1 A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." \ |6 I1 u6 a
swarm.SignatureNotFoundException
$ Y+ Z3 U$ l2 V ]5 q0 c9 P at swarm.Selector.<init>(Selector.java:76)+ h0 B. r8 B* K& b* E4 B- J
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- s5 n7 [/ V# I( v- L
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 q8 Y$ R6 Y* N& L
/ J: p9 I( U E. A1 v( f
* y& h/ R! g: X5 K5 }
import swarm.objectbase.SwarmImpl;7 }% [' [- b! s+ i
import swarm.objectbase.Swarm;
6 T/ y* O! u2 |3 K. f4 wimport swarm.activity.ScheduleImpl;
. S0 X1 v) J0 O8 N5 J% G1 o. wimport swarm.activity.Activity;* U8 i# g2 n7 d8 S
import swarm.activity.ActionGroupImpl;, v: z, z0 r5 o( l; r% h, i4 o
import swarm.collections.ListImpl;5 ]( J# C0 ?0 Y: k' n
import swarm.defobj.Zone; 8 d: t8 o( C5 A8 _* G: D- C, |4 x
import swarm.Globals;
H, G3 s0 ?+ [7 S: fimport swarm.Selector;9 @6 x$ U) ]2 W7 ?+ t8 @( Z5 N
import swarm.activity.ActionGroup; $ z& x* ^7 L' O
class Agent {% ^" _: w- I: ^# A" y8 T9 E/ i7 x t
char id;
2 s6 E" `' f1 h0 f2 } _: b
6 {, t g1 Q9 s- h6 h2 q7 @0 A' C( O Agent(char id) {
" L" w, `7 `1 `& T! D4 w; V B this.id = id;
, j. J1 \6 I( o! M }/ {) F. I- ]/ h; }6 D
+ F8 e& y( K( J4 M# Q( X
public void agentStep() {# N+ w3 R: F$ l1 Y E
System.out.println(id + ":" + Globals.env.getCurrentTime());; v3 C6 K) B) ~3 }5 ~" j8 K1 I
}
( I3 [' V5 [8 f; u; V$ z6 y; [* n}3 @6 d! S W6 l4 U' h7 j
" k' P* Z9 G9 L7 W1 X
public class ActionGroupDemo extends SwarmImpl {: ] y+ A9 k8 ~$ M
ScheduleImpl schedule;
% M7 V6 Q5 L" S1 l2 Y2 E6 t9 { ActionGroupImpl actionGroup;" E/ K2 W/ z& x, g
ListImpl list;( P: x1 G, E0 p: n. b, ]$ g3 u
char Id = 'a';% c( ~- |! K7 |, s1 V2 w2 M
8 c% [+ ^9 f2 E; A5 m2 r1 j ActionGroupDemo(Zone aZone) {: {0 |; a3 ?5 ?7 d2 X: x
super(aZone);
t" [: v3 g. A7 A' D* I# e( } list = new ListImpl(aZone);
9 R% P) S8 R6 s' }% l' R swarmSetp();$ Z$ L* z$ ], T4 J- n6 }- @
actionGroup = new ActionGroupImpl(aZone);! K$ d( o3 ]; p3 |7 O- F5 D
schedule = new ScheduleImpl(aZone);$ d! b, X0 i& o7 H% s6 D/ K
try {+ a9 F3 p; P# c! J% G
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 T& N5 t! I0 m2 D; g Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; |9 N/ P% P$ u1 O& k% _. `
! Z2 {: p9 q9 h3 O" d. S' ]1 | actionGroup.createActionForEach$message(list, agentSel);
6 s1 l' C. u Y9 S' ?: e0 k& n actionGroup.createActionTo$message(this, swarmSel);
, R) F% G: [& e: ~! L schedule.at$createAction(0, actionGroup);
- ], L B! s8 g& c; g# u4 p: b. D schedule.at$createAction(1, actionGroup); c W* a* c' r/ T' `4 D5 c, K) Z) K
schedule.at$createAction(2, actionGroup);
7 b5 g+ M8 S$ U
$ u" A. n, W0 U } catch (Exception e) {# l, q, g# [* o7 g! f9 Z; g0 @
e.printStackTrace(System.err);
( G5 F# B7 G0 l! r7 i$ o; ~0 x //System.out.println(e);2 @/ ^4 O1 ]8 ~3 i" T T
System.exit(1);
8 {# D+ t1 c! v }' ?# H+ k- u' Q9 u
+ T/ x. o m' ^- z9 @. ~; T8 x1 u2 E, F1 _4 s8 r N
}
0 @% r- X, Q7 z3 G4 `
1 ]4 y. p+ h! i5 g, Z private void swarmSetp() {
' H4 u, {: g" l( `3 V8 l" L list.addLast(new Agent(Id));7 ` z/ _. O: z( ?
Id++;, I* ~' n7 j3 F/ C% a- R2 ]4 E4 p
}: J) E" }. q. z/ B: z) B- y
+ x" N% J% Q+ m; k
public Activity activateIn(Swarm context) {
" v! y( j: c6 ~ D3 A: K) M$ o super.activateIn(context);
5 \# L4 M( F/ v# o N: t' H schedule.activateIn(this);7 `- k/ d5 U# ~7 d
return getActivity();
& a1 t" P$ q$ q5 g& m- p& ` }
3 [8 X3 n& j1 l* C
5 {: q& f$ B# S- ?- B; C7 ^ public static void main(String[] args) {
1 V! s: l7 Q `+ q6 t2 M3 l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 `& ]5 L6 n- Z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ t/ A4 H, R' w( o7 H
swarms.buildObjects();4 a1 C' ^& R% t4 e6 G! G
swarms.buildActions();- s5 Z1 k6 y; ?# F" J# Y
swarms.activateIn(null).run();8 k, r" e+ Q8 R; j$ }
}
- A2 k* y8 F+ H6 t0 z4 M/ X
; V( i% u; C3 o) c} |
|