|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % X8 N) R3 H4 Y3 O
; }' |. p; ?) L* _* Z! ?! l4 D7 @4 A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- U) n- Y& q3 B/ Q8 J+ U9 A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 E; _! o* Y! M8 j/ ~swarm.SignatureNotFoundException; ]" p3 H3 w7 R' r, ?
at swarm.Selector.<init>(Selector.java:76)% W' J8 o. } L% g4 i7 L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* F* \; [1 E+ y1 s9 |2 v6 p at ActionGroupDemo.main(ActionGroupDemo.java:67)$ t7 v0 |; Q. c" I1 e7 _
1 N7 J( k- X2 O0 a9 [7 P( U) W/ D7 i8 f. U7 u) n; [( i& e' H
import swarm.objectbase.SwarmImpl;
% ?: g8 M0 \3 X& Dimport swarm.objectbase.Swarm;
* G" ]* `( s9 O2 ?8 m6 P/ L$ Aimport swarm.activity.ScheduleImpl;& ]; _4 ?7 G; E' w' U
import swarm.activity.Activity;9 _7 J# I4 u+ ]- q7 e$ i, B( N" J
import swarm.activity.ActionGroupImpl;
; l8 A) f* ~, b! J& a, m3 b# ^import swarm.collections.ListImpl;
' m$ a) `: f2 r% _- B! V# Oimport swarm.defobj.Zone;
% n# H: F3 A' W8 C( Himport swarm.Globals;0 D( L8 X8 E: |+ D
import swarm.Selector; U* [8 J+ o1 e& s! U1 s
import swarm.activity.ActionGroup; 3 w& G! Z) X! }
class Agent {6 t! B+ p8 h5 ? r$ u2 F
char id;
6 k9 u; i3 `! T5 H# ~2 W
/ W' y# A+ a9 D$ t Agent(char id) {* w7 |1 z; s2 ?# O5 R5 f! I
this.id = id;
0 v3 Z3 y) G! h' Y$ a' v8 V3 h }' b0 q1 ^8 o$ @6 H( l
/ M. i' O* j* F1 i: ^# A6 ^
public void agentStep() {
( S+ A- I& J# Z, {: ^1 `+ g6 d System.out.println(id + ":" + Globals.env.getCurrentTime());
# y) y( i0 P( J }/ T. Q; v5 b9 o7 M: t0 q. X
}* R7 r3 t) Z0 f
8 W$ h0 h. J% M7 Q, Hpublic class ActionGroupDemo extends SwarmImpl {
1 t6 b) n7 h6 Z T& { ScheduleImpl schedule;
9 W7 V9 R+ v; d ActionGroupImpl actionGroup;/ c% a. f; z9 r& U* Y
ListImpl list;8 K5 t. ?$ y+ [: h7 N
char Id = 'a'; |0 y$ O7 ?! G2 U$ r8 `. G
. B" ^ |# `* V6 K8 q, _
ActionGroupDemo(Zone aZone) {
# w$ t' f& `$ ?5 l+ H2 p0 }+ B+ H super(aZone);! G/ F) d( Y7 y Z
list = new ListImpl(aZone);% N+ z8 p) g; Q" u& I6 a" l+ L
swarmSetp();+ y. A/ U/ C- Y$ j( i: L7 h( c* a
actionGroup = new ActionGroupImpl(aZone);' r. I3 m+ x+ ^' \3 C
schedule = new ScheduleImpl(aZone);& g @3 B- P3 E! k7 W& s
try {
" i2 I; i' g8 \+ x. L Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 n- l% O7 Z" m& u6 q& } Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) V% ^+ A/ V ]4 q6 N$ Z; ?
9 _* U/ `0 \3 w! U4 B2 h9 {7 [ actionGroup.createActionForEach$message(list, agentSel);3 t! ^2 ~6 J! x8 N* ^" m- X. d& Q+ {
actionGroup.createActionTo$message(this, swarmSel);) }9 Z% z* d* m! ?, O# E
schedule.at$createAction(0, actionGroup);
( y1 m: M5 q1 A/ M schedule.at$createAction(1, actionGroup);. v0 |! F* j/ g# T$ I
schedule.at$createAction(2, actionGroup);
. t, z9 Z7 p# k& `0 E5 k$ g
7 t! N4 w( k4 I } catch (Exception e) {
9 e' Y/ W! u+ P' o1 f8 _. U e.printStackTrace(System.err);
* {; {; [1 s) s* Z //System.out.println(e);4 I z U5 A2 |1 u% K
System.exit(1);
+ {/ R; V& E/ Q3 ~9 B9 Z }
, `! C1 a4 W* v7 G/ N. v3 {( W$ e/ W5 `- K- S& N1 k: y7 k
0 s' q( P5 E$ S* m' @' f+ R }! N: d3 J8 T$ J: B
) D9 H1 w- W2 ], u; H
private void swarmSetp() {
) R* A2 H; F: O' d0 } list.addLast(new Agent(Id));5 W$ e( |# H% X- W. T
Id++;
% F: K3 V# Z1 D2 P1 [ }$ B2 V& |- S$ c; ^* n6 j
* a2 Y) |( H+ b9 `9 u( V public Activity activateIn(Swarm context) {
3 E8 P% D: f+ y* e7 L$ ~9 | super.activateIn(context);
1 r/ Y# V4 s8 c% ?$ ?4 p A schedule.activateIn(this);6 R- }5 T5 ]" m
return getActivity();
0 o' \& o2 v' O: W+ b ^ }( b) b- V2 [# ? M- F4 M7 g8 D
: z1 b# r6 X3 ^% l$ ~ public static void main(String[] args) {
: @9 d1 T& [* r. |+ b* R7 G- p. x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# J% N" i2 n3 u; x& _
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) w# e+ k5 u* i& o1 q. Y swarms.buildObjects();
7 x; U" A& F. @ swarms.buildActions();
* {9 ^0 M3 a. ~0 S swarms.activateIn(null).run();
H. j! P3 p8 Q9 X' D- G2 @" z8 R: q }
X8 y G; v6 p
, U$ [. U! D5 f8 x. A5 e- p5 v} |
|