|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 }8 `- P- H9 {9 i I
9 S; b. n4 A: }8 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 w* P& a% `% d' D) E8 E# x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' b7 Q& A1 D0 h: e+ ^swarm.SignatureNotFoundException
@% x) J2 s% y0 M; C at swarm.Selector.<init>(Selector.java:76)$ f) }# i: L/ G# K0 L( L) s. r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( f. C/ n5 U9 T' w3 F( `
at ActionGroupDemo.main(ActionGroupDemo.java:67)# _2 n) |* @' L7 D
% X# \9 b, p4 d
3 y/ w4 ?( v7 X& p: z
import swarm.objectbase.SwarmImpl;" J* a/ b$ {! s$ X( z
import swarm.objectbase.Swarm;( [+ d) g/ r; M4 Y
import swarm.activity.ScheduleImpl;
. i5 J0 a, X/ M& K0 oimport swarm.activity.Activity;
, V3 T2 B# U Z7 i9 x" Z& ^" Ximport swarm.activity.ActionGroupImpl;
" M3 [( N3 O/ P. L+ [9 l/ ]import swarm.collections.ListImpl; n4 E; ^. P7 x0 k
import swarm.defobj.Zone;
3 ]0 v* z& }% S/ A3 l* v3 rimport swarm.Globals;
3 w k7 Y2 U' Q: `" eimport swarm.Selector;+ ~* z$ I6 g' `) x/ L
import swarm.activity.ActionGroup; / O1 m0 _& l, I+ H9 D' m
class Agent {( c x: [$ [( j9 K8 ?4 C; \' _
char id;
: }5 Y+ }6 U. l2 C. y5 b% X/ ~: J* V2 [- o
Agent(char id) {
( ^1 T. ?; v4 y( I" y( Y( ] this.id = id;! F/ m7 `: |0 U& X: T7 d# v/ x: [; j
}
9 U/ n# ?; n; Q* e7 s7 G5 ]! B3 f% m0 Q( V+ V0 g
public void agentStep() {
7 P/ _' M0 R$ u- ~1 L1 o4 _+ H System.out.println(id + ":" + Globals.env.getCurrentTime());
3 H$ g" U5 n$ M# N }3 e+ F2 @6 _6 L
}
* V4 y& {2 w# x; l1 D- b- u$ u8 j' i" S
public class ActionGroupDemo extends SwarmImpl {
% l% `7 u% {% K, S: P* O ScheduleImpl schedule;
: J1 s* Z X% m) R9 _# H ActionGroupImpl actionGroup;
8 G/ m1 O0 I% _$ @5 j1 U ListImpl list;
. C- J& l5 U {, i" L: Z* C char Id = 'a';
0 ]" x+ T. J# p$ U, k/ D
. P& ?0 ~* W9 t1 J1 ]0 o ActionGroupDemo(Zone aZone) {
# J( v8 V8 T: p- w# w super(aZone);
5 ]' F7 M; `4 P. E7 n list = new ListImpl(aZone);4 G- n9 t7 H# A5 b- {, I" _( n$ A+ N
swarmSetp();
8 d _ {1 |4 t actionGroup = new ActionGroupImpl(aZone);% i" u) l' Z" p s
schedule = new ScheduleImpl(aZone);. z. ~, L3 p6 }+ U/ S
try {* y8 } p) Q; \! {0 D
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 R+ i$ U7 T, P5 ~" g6 t
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# _( L9 h7 v4 b2 e) V
- T, F6 W/ f7 p# V0 X" U actionGroup.createActionForEach$message(list, agentSel);4 M- K3 ^9 a9 O5 w9 m9 }
actionGroup.createActionTo$message(this, swarmSel);
1 I' U4 T# V# t P4 Z schedule.at$createAction(0, actionGroup); |, N- Q/ `. j8 n- c
schedule.at$createAction(1, actionGroup);
r& n9 W3 P$ I8 ~- h" q2 m schedule.at$createAction(2, actionGroup);# m- E" w2 f8 z
# Q" l; t; Q8 S) g% t" U, L Z. C
} catch (Exception e) {
$ M- S% \. d3 h e.printStackTrace(System.err);5 g$ d% i; P/ N: D7 j1 |- @
//System.out.println(e);, }( x# d2 ^0 l5 U
System.exit(1);
! k5 k7 A7 L0 l. D/ v+ ]/ s }' D" L2 U; { p6 I; B; B) N6 i0 G
- D$ q+ m2 u8 j# N6 \7 q5 _+ {3 C9 a- p7 x( ~% @ f/ y* t- l
}
# ?4 R: }' O# x& U' @( g- B; L. L$ L T
( x" r1 G) A5 [( \2 d private void swarmSetp() {
( C; M6 q* n' n* b# v) v9 W5 b list.addLast(new Agent(Id));6 A7 P2 _4 j; `
Id++;3 J' a( R. F& U4 N. V4 e
}
# I" e3 v1 C) i/ Y# M7 g) G1 e1 m2 J( q# w
public Activity activateIn(Swarm context) {
8 n: t; I6 @: o9 Z super.activateIn(context);1 |# u9 C* u0 y8 ]/ s8 F0 Q. S' E
schedule.activateIn(this);' e* ^0 d$ N/ ~/ Y/ k
return getActivity();
- W( E& ?8 C8 z" z+ I/ ]; B* p }
" V( f% {1 @: I1 r6 x6 g- X" |* @
public static void main(String[] args) {/ q8 N2 r) h9 k& h4 L' Q3 N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* e C% c; C& o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' g0 V! k! @$ | swarms.buildObjects();7 p9 s7 d1 {! k' U0 [* [
swarms.buildActions();
B3 C# {) l2 `! p4 F# C swarms.activateIn(null).run();' e0 \. v4 {+ {9 a0 J! g& }
}0 p6 k9 k( M+ C
2 _: R/ x7 y3 b" `8 }/ W& ^} |
|