|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. ~- q! C; w2 T1 d9 H9 s( L
, Q+ ~, a3 C- S1 a3 T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 _5 \/ ]" ~ d: S8 B0 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) O0 F% M- ?/ p! X# Q2 Iswarm.SignatureNotFoundException
: ]! Z6 K5 l* ^ at swarm.Selector.<init>(Selector.java:76)( y3 D9 i6 B# y/ D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 t" p `; T3 _
at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 j* O7 H6 ^' u8 P! b9 T' I% Q) }& k5 ~1 K
6 K9 x* z" P6 [import swarm.objectbase.SwarmImpl;
; K7 C) m' X8 }4 p: timport swarm.objectbase.Swarm;1 f4 I4 t( `7 V& B) A) y, p& N ^
import swarm.activity.ScheduleImpl;' S/ F2 F V" p- X! q ~9 t) D8 g
import swarm.activity.Activity;7 F9 m: B: f. v" o& ]
import swarm.activity.ActionGroupImpl;
; _9 v5 u. n! d0 r# [) Rimport swarm.collections.ListImpl;* U2 s; S% u/ u) R4 A1 m% `
import swarm.defobj.Zone; 9 {* l9 ]) c6 E* |, }
import swarm.Globals;4 w6 i0 G" d8 \9 h' p
import swarm.Selector;
9 d( C! D. o) T/ a! Z5 |5 G" Qimport swarm.activity.ActionGroup;
, I. \1 s- m/ n- h* _! V( h) sclass Agent {
B/ H% L3 @& M, y/ S% P9 I& g. y char id;
- R2 U/ C. |$ w
9 t% n# v2 J' h3 Z' O O Agent(char id) {+ y% z1 B+ l5 b
this.id = id;
8 F) ^3 r3 b5 E; ? }9 T6 z8 Y% l @5 B
8 m$ P* D7 S' Q; K, } o, l3 p$ Y
public void agentStep() {
1 f3 j4 G [8 e0 a. Z System.out.println(id + ":" + Globals.env.getCurrentTime());( L3 D( U' ~% l- K' a
}$ A7 L$ Z2 b! \; X7 R+ v% k2 R& C
}6 s7 c/ Q! q3 i5 |3 G- u* W* O
1 k; Y2 m2 P$ r% Z' H& Ppublic class ActionGroupDemo extends SwarmImpl {
P; F+ B: J2 c! Y+ n9 x7 ^( ? ScheduleImpl schedule;$ |( s3 x, B) u3 m
ActionGroupImpl actionGroup;. Y* |' V: ^$ I8 W' Q1 v
ListImpl list;
# v2 u. c7 z0 o0 Y) r3 p; ^& L char Id = 'a';
. b* A" r+ t) m$ z* x2 R) S4 `5 Y1 B* i3 E; X# c$ i: n
ActionGroupDemo(Zone aZone) {
' d3 c2 v2 b& t, ^ super(aZone);
) w: a8 \: r# d9 Z list = new ListImpl(aZone);
9 [: K; Y+ v! ~* s swarmSetp();
7 p6 ~; B" Z: V* O* [/ V/ @, J: _ actionGroup = new ActionGroupImpl(aZone);# C+ I8 C7 i) x% l) w' {7 O
schedule = new ScheduleImpl(aZone);* f0 n, s2 }" @9 o# y% G! B2 u
try {
$ \4 g. e" ]/ ], i3 E3 N Selector agentSel = new Selector(Agent.class, "agentStep", false);; H+ k0 s- ^4 G) j! w
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 \# y% X' r. B, h: [+ x) o
, C- G7 {1 c& w( @ actionGroup.createActionForEach$message(list, agentSel);
! X' D1 y% u* s: A2 n actionGroup.createActionTo$message(this, swarmSel);
& O7 ^# ^6 _& n8 Q schedule.at$createAction(0, actionGroup);
7 j4 ^' x3 U, n7 S: V schedule.at$createAction(1, actionGroup);
4 S+ C5 |1 d3 P0 Z# @ schedule.at$createAction(2, actionGroup);6 {3 V4 s( n; c2 o7 h3 g" R# E
5 g8 M! I" I: h1 z8 n) F. [ d$ M% P } catch (Exception e) {
: l+ {, |! ] ]: R1 W e.printStackTrace(System.err);$ Y* f6 P1 i5 _- q
//System.out.println(e);- I0 D1 i: ]! H, z( u' I
System.exit(1);
/ ~1 [9 ?$ t' X# l1 Z N( ?4 y }
; g0 Z: F- M4 V! e4 l6 k
9 Q# w9 R) ?* \5 K7 j$ j
) t$ B3 q# |6 W7 J }& |* o! a. o- n( k
h$ Q2 t6 r# n% T9 A+ |7 X: P
private void swarmSetp() {! z6 k/ x# z" r' ^
list.addLast(new Agent(Id));) i1 [8 l$ C0 N3 m w7 c7 |
Id++;7 b+ M, E0 J' P9 g( f! t
}
% C, w: ]1 g* S) m) _
7 e% x X: Z* |( c& n) J& W0 H public Activity activateIn(Swarm context) {) I, X. N" L o4 H% J+ E
super.activateIn(context);
' M# c& o% g+ O( N6 M schedule.activateIn(this);, v7 K5 r8 T6 ^* ] \
return getActivity();
1 Y) t) A; u o }9 h0 y( y2 ~/ b0 @3 @7 f5 C
" ]2 l% n& U7 z: P6 C3 i. a0 d2 o
public static void main(String[] args) {. {4 Q; ]9 D4 y- M+ q" E7 f
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 m5 F: M& n8 s& @
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ g" |- }' r* b% ?7 q swarms.buildObjects();
/ y( Z+ X O1 m$ ^ swarms.buildActions();
( i8 o7 O0 E) d6 t% ~3 i/ L* V5 u swarms.activateIn(null).run();: F3 K; l2 k! L9 a8 t) A
}
; b' `. k3 c+ H& @, n- X: q( @4 a
$ Q b# G+ Q5 A- f} |
|