|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # f/ _+ z$ W; q; d
" M; V0 i( L3 X. e5 \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; `% F1 n2 W6 z& S; a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: i$ z, O1 c( `) C! `9 s. qswarm.SignatureNotFoundException
' d7 f# ?9 ~4 J) k at swarm.Selector.<init>(Selector.java:76)
* ^! J5 B' A6 Y) _& O; D7 O at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 d' N6 P5 m! z4 A: w1 J6 m
at ActionGroupDemo.main(ActionGroupDemo.java:67)* P; s8 y2 W7 V0 U2 U S& s; z
: |' G: G+ I0 H) B1 k: h+ D7 [
7 z( L+ l. a, l* S: M8 e8 |
import swarm.objectbase.SwarmImpl;$ G, I' u; h3 F- W/ [
import swarm.objectbase.Swarm;& O2 z5 j @, c
import swarm.activity.ScheduleImpl;
3 a j$ `1 M# C& ]# d q7 mimport swarm.activity.Activity;
' T; h2 W, K3 j" N4 k" F$ X- b2 simport swarm.activity.ActionGroupImpl;
7 B; \) ^+ \( v$ j. zimport swarm.collections.ListImpl;
) b! |8 n' H8 _. K; H) Eimport swarm.defobj.Zone;
1 _0 u- p$ f4 [- |import swarm.Globals;
& g2 \: |8 [3 Rimport swarm.Selector;
# W$ t/ ]# G: B" l( G1 h- }& nimport swarm.activity.ActionGroup;
q, B l/ X( {4 x0 w5 wclass Agent {
: f1 Z1 h/ V% e* d, n- y char id;
& v \5 l: S* c( K3 Q4 U' F! o$ A4 j1 J$ I6 B/ K! d5 [/ Z; r: Y P
Agent(char id) {
: q- r& v9 x' B% t v- @( g% k this.id = id;
& g- g: h2 C4 k) m, {: C }
; J* T( S3 L% W( R0 |, O1 w, p7 O" q Z
public void agentStep() {3 [: F- ~5 ^" r8 X/ s/ S) I
System.out.println(id + ":" + Globals.env.getCurrentTime());4 `' h# i" K% C5 ]% }
}
* g% o( N6 j$ [2 J% W}
# H4 n* y& E7 b' {2 L% R/ y+ w' }+ _9 T6 E
public class ActionGroupDemo extends SwarmImpl {( `9 `5 E, e/ Y& a% T. `% N# Q
ScheduleImpl schedule;
. p2 y8 C! ~- R2 q: C ActionGroupImpl actionGroup;0 J) s* {9 ]0 e: a8 e' P' w3 M
ListImpl list;) c7 r6 g' f3 S! I2 k; @
char Id = 'a';6 j& @/ V, W4 ?- U; X* u! P* W
) `9 M$ U. M. V( \. u" [0 Q9 x* T, L
ActionGroupDemo(Zone aZone) {7 t* q6 |0 G4 y& C
super(aZone);
7 g( @6 Q# A, x: J2 Q list = new ListImpl(aZone);( v- }) x" q$ Z- b( N
swarmSetp();) N5 Y3 [# @7 J0 ^. F% Z- C% g4 y
actionGroup = new ActionGroupImpl(aZone);
- Z9 [7 @& w$ A5 A schedule = new ScheduleImpl(aZone);
9 ?' A/ m7 k5 P6 `. f7 z try {6 D o) w% u9 i
Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 y$ |0 ]2 ]: I' Q" I& A' W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ T6 T t7 v: j \
( z+ j! w3 w+ B actionGroup.createActionForEach$message(list, agentSel);( X S% t( M( _+ [9 T
actionGroup.createActionTo$message(this, swarmSel);3 D7 |" S& H5 Q, _, O. [/ e8 b& V5 T
schedule.at$createAction(0, actionGroup);$ D' y# ]* X7 c" i* s6 F, H" E
schedule.at$createAction(1, actionGroup);1 k, p; [9 L' |2 Z% o1 J
schedule.at$createAction(2, actionGroup);4 S; U3 t2 ~. R% g" E% B
O! S$ E- {: c7 M } catch (Exception e) {
1 q: o/ q3 P0 x8 \2 v e.printStackTrace(System.err);
0 s0 ^) F/ j J& w7 ]# j- _3 c //System.out.println(e);! K9 |% O2 y9 A& y( C O6 r1 s4 L$ n3 Y
System.exit(1);
/ z$ R) f- P& e1 Y7 q8 y2 H }0 w! m- k7 n! a$ i! A3 `4 Y
$ |& V; R6 w; x5 l; N
# n% R' d0 ]1 I+ g; O
}
. v0 J2 j! U6 P' S% e: O( H+ }0 n# c1 ~" K- q' k! Z' J# ^
private void swarmSetp() {
* p* j S+ A# ^; w1 V list.addLast(new Agent(Id));) t- m# k1 s( O% U7 z
Id++;
9 y7 S: t, P! g( F7 i }: v" j; U. X1 F3 b. P( {
6 ^: b2 S# e( |3 U
public Activity activateIn(Swarm context) {- z( X2 P, s" D5 x
super.activateIn(context);3 M2 \: k( w- r& L& Y: q. z6 q+ x
schedule.activateIn(this);9 ~4 @' d0 g& x2 S5 i
return getActivity();9 r+ S q6 O8 s2 v9 L7 p$ w- C
}
0 Z- A) C" r/ I5 O: P. p0 P2 Z( m% A/ O$ I
public static void main(String[] args) {$ H# K$ j/ Q" r- q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ h X" |# J$ Y+ _: F# r7 r Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 K- P$ |# g+ U& h N( H* y) V# l* N
swarms.buildObjects();8 T/ K6 V5 l4 a3 y$ s9 R% x P
swarms.buildActions();
8 r2 t8 `3 H! z9 O' W5 } swarms.activateIn(null).run();
) }5 I3 N7 { n) s. o }
4 ?) _' Z' W3 o, G$ m7 t6 J6 D# G: Q7 i8 G4 [( H: I) \$ z
} |
|