|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. e8 D! |$ Z: @6 Y3 }; r8 O& J. ` A3 t8 y0 u4 S: ]2 K; V2 j2 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: @9 d: r5 l3 H6 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 e( ?; d; J( c7 H
swarm.SignatureNotFoundException
, R5 T1 ^1 d$ ~/ C7 d at swarm.Selector.<init>(Selector.java:76)
9 T9 R! ?5 J( f5 S6 K" ?# B at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 N% D8 w2 O, [4 B at ActionGroupDemo.main(ActionGroupDemo.java:67)
! c( S* U6 b; m5 n* K
5 n3 t4 Z2 ~+ V, E9 O/ M
" e$ Z4 K7 e2 r( r6 aimport swarm.objectbase.SwarmImpl;2 K2 e* _# X$ i, C
import swarm.objectbase.Swarm;
/ a/ d7 j1 C- q) t3 K9 S, _# Dimport swarm.activity.ScheduleImpl;9 g4 r% |3 a- ]7 b1 {
import swarm.activity.Activity;
( k9 c2 R5 C) d; T5 K8 K: H9 Ximport swarm.activity.ActionGroupImpl;% W9 [# j/ N- E) ?
import swarm.collections.ListImpl;3 c; V2 o* g3 s6 h+ e
import swarm.defobj.Zone; . u3 g5 ^6 s1 T& l; ~9 F
import swarm.Globals;. ^4 b: ]7 q7 d2 ~3 T |+ a( h
import swarm.Selector;
9 ]! l L5 _, himport swarm.activity.ActionGroup; ; [/ e0 A; T$ a- z7 t! p
class Agent {
+ G& Y4 c3 q+ G2 o char id;) I; s1 ?3 m1 |9 ], i
, \1 f9 x" c0 u0 B1 m$ m Agent(char id) {4 m. ]* H. X% X* y
this.id = id;
/ z9 S. @1 M* k$ x3 Q' { ^! y }4 x3 g% i1 L; J+ T9 M$ T) n
2 S0 T( P! S2 g% j
public void agentStep() {. x8 s- Y, X6 d1 p* n1 k
System.out.println(id + ":" + Globals.env.getCurrentTime());5 ~6 X( T3 L. E. b& q
}' a. U7 Z7 h9 V
}
5 k% r% n& g! d( F# q3 ~8 H: G- p9 f. d8 C0 B
public class ActionGroupDemo extends SwarmImpl {& }2 j, |6 q8 u5 D N) M! v
ScheduleImpl schedule; q% h9 {) R' |/ z# `1 S7 X4 O( [% F
ActionGroupImpl actionGroup;3 B% ~& W" A: u) e4 l/ p6 r
ListImpl list;
! N/ j7 R0 S3 x, ? char Id = 'a';4 ?: C9 w9 i3 k4 n
D* ]' y& T/ H1 T ActionGroupDemo(Zone aZone) {% p& q* e1 k' T) }. h2 |
super(aZone);0 Z: f7 }- u8 l$ I+ B6 j
list = new ListImpl(aZone);
4 Q8 L3 H8 G6 X! T% V swarmSetp();
: \+ d# l! k" A( n% p actionGroup = new ActionGroupImpl(aZone);" j, S& p+ U, D4 s0 w" R% l7 m- s
schedule = new ScheduleImpl(aZone);8 V1 t3 n3 R3 R. w: O! W# L
try {7 j# }: _1 E4 S- |
Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 ~2 y2 ? C9 V: i Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 _" l; a; o) R) K1 |$ S$ d
0 p T1 e( i3 `2 w6 [8 x
actionGroup.createActionForEach$message(list, agentSel);' r5 j+ U7 Z* v! `
actionGroup.createActionTo$message(this, swarmSel);
( B0 H6 m9 F& C- ~" y schedule.at$createAction(0, actionGroup);: E# c! L2 r. S( d! L/ L" R
schedule.at$createAction(1, actionGroup);
H) m0 F* u7 g) Q0 X/ V schedule.at$createAction(2, actionGroup);
9 V8 v) n6 r, i8 `5 G. B9 L5 Q/ p, p: |! t. B- S
} catch (Exception e) {* P8 s0 n* e* k9 _! ^; S% m$ ]
e.printStackTrace(System.err);
" F- N$ j# z, N+ Y/ m! L //System.out.println(e);
) A" N1 |8 K: E9 | System.exit(1);
0 e' O2 b& ]) q }& W8 |! }$ S N( s* u: F
9 B' w9 c7 L8 m# t1 U4 L7 X& e+ W) K9 e, @
}2 t' N3 |/ }# _6 Q. L0 @
; m) m$ S. e" B+ ~4 T2 n5 S
private void swarmSetp() {
- g w0 b9 c5 v/ [- E list.addLast(new Agent(Id));
& ^. O& w( F9 E7 R7 U Id++;& v% [- y, k% U, V1 J) b9 `" S
}" q+ [2 B- z1 U
' Y) }- @4 T' S r7 l+ C$ {+ U public Activity activateIn(Swarm context) {
* s/ \) r: P! l; Z9 ?% @. [ super.activateIn(context);
5 d+ \% L: v+ l/ P3 u+ ]7 d$ q schedule.activateIn(this);9 O5 h6 S4 m' }! ]* c" z d
return getActivity();
& Z4 X% J) Y# C }
0 e! ~8 [* {' c" [
$ O% o7 X5 g, ^% }* Y public static void main(String[] args) {
! i( q, w$ d' w# m/ L2 j Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 i i \ l& h8 ^
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 K; w: N3 f1 W- Q* s swarms.buildObjects();& s! e0 d* S1 m8 b4 v) T
swarms.buildActions();% o1 C( w: H/ r- _
swarms.activateIn(null).run();. r7 K+ M# b, s# h$ |" q) t. i
}8 _( G; d2 F6 p5 W. ~
9 \2 [ d/ Z$ \1 X+ ]5 h( H" q} |
|