|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( L4 A. Z- h" \8 l. N- a
2 O$ K- U, k: E: f3 Y/ r [) U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( p' }) `6 }2 Y5 r" ?+ O6 P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 ~; @7 Z* C% s& }- Q- jswarm.SignatureNotFoundException' ?6 Q% H9 p5 R7 s4 k7 V- F
at swarm.Selector.<init>(Selector.java:76)
7 H# F3 C% R5 O. e& h at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( w$ V# y9 ~/ b" U7 Q d/ ^ at ActionGroupDemo.main(ActionGroupDemo.java:67)# A8 Q% g+ K* \4 W
) e4 m, A/ M+ O) ?, x
$ `- ~1 B& e/ ?
import swarm.objectbase.SwarmImpl;
1 l2 v9 l1 [" N7 E8 r% `2 h2 H3 Himport swarm.objectbase.Swarm;
3 r5 M9 B' t( l$ ^3 p1 Y$ dimport swarm.activity.ScheduleImpl;' k+ a& q- n1 `( G1 H; a
import swarm.activity.Activity;8 F2 H$ H- ^& C- J* B. f7 Q, ]
import swarm.activity.ActionGroupImpl;; X0 V- t% f1 h3 G1 @ G
import swarm.collections.ListImpl;
+ |- Q+ n$ {" \7 Eimport swarm.defobj.Zone;
6 W% [1 W2 M- s9 L2 c: Fimport swarm.Globals;
@" Q6 u! z5 B3 T- @% U! S/ R/ Zimport swarm.Selector;; [1 E' J" g% I4 f
import swarm.activity.ActionGroup; 7 W6 {' J0 n8 l& s' f" S ~( D
class Agent {6 Y* y. m" w* [6 @
char id;$ Q' Z$ b9 x- F+ Z/ ?
7 c7 R; O+ {& [+ c Agent(char id) {
: Q6 k! v0 s) E5 u this.id = id;
6 N7 @" |) ]/ l7 Q0 R }
8 v' H+ c/ _1 Z3 \& `
7 \6 T# f8 n5 u8 c public void agentStep() {
5 V" ~, u5 `6 h& ?0 l9 { System.out.println(id + ":" + Globals.env.getCurrentTime());
. H; @1 b% N8 z, r }
1 Q. E( m/ |+ h* O/ T9 M}0 d& b0 d$ _1 Q2 C8 E6 b; j
. t9 S; O- p# y" i$ o
public class ActionGroupDemo extends SwarmImpl {
4 A' J6 f9 U$ q( {5 N& Y8 T4 I ScheduleImpl schedule;
# x* C+ n5 E8 ?. F+ A ActionGroupImpl actionGroup;# j4 B/ w w8 a M
ListImpl list;/ M6 _; G4 \5 S+ s0 ~+ d
char Id = 'a';# j) @5 @+ V5 ^) o. R% Z# j4 D
+ g i: h5 s0 T3 H! f
ActionGroupDemo(Zone aZone) {: L \4 m0 ?0 G3 t
super(aZone); {6 T( @2 Z/ X) A) T7 L
list = new ListImpl(aZone);
0 e: I/ \1 H5 S; ?( q. U5 M swarmSetp();
& L2 M( P) ]. g& r- [" c actionGroup = new ActionGroupImpl(aZone);: N/ U( C1 B; I; B. B
schedule = new ScheduleImpl(aZone);" l$ \: w D& ~ A- _4 v: Z: ]
try {
0 F4 ]0 B! { d1 M& ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);/ b9 [& d9 I) N8 C* v, a! Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 S6 g( J# Z! W! w" m
( |( F5 F1 | _ actionGroup.createActionForEach$message(list, agentSel);
& W2 U9 l7 ?* }+ B* }5 I actionGroup.createActionTo$message(this, swarmSel);
0 q3 s6 Y( O- g' s schedule.at$createAction(0, actionGroup);& u: |% ]5 A3 z* H! q: e% H
schedule.at$createAction(1, actionGroup);
9 P" V7 _% C# _" i schedule.at$createAction(2, actionGroup);/ P4 ]0 d4 i3 z" G, H3 M; O& s
) W E, ~* M/ ]% |
} catch (Exception e) {6 ?" u% }5 z \; J2 @# @# `! S
e.printStackTrace(System.err);! m8 N, g" R5 q! J( ~/ k; {
//System.out.println(e);
. s0 M; b% x4 C System.exit(1);
6 U3 E1 \: q: J$ H } o) Q5 e* L& m0 O" T
K t! Y. u: D: H( t/ W- v+ A5 Q4 v0 y1 z$ L3 {# z" c5 ^- Q% H
}
9 t7 |1 L& [3 [1 F9 k# f
' D( X. a" t- `" w- a5 n private void swarmSetp() {
9 z$ j- H3 k9 M# T list.addLast(new Agent(Id));
& D) @: g. f) o# O" u9 v Id++;, @* x* k" Q/ r! l) D ^
}. I7 I4 S: B6 \, a0 Z" v% c( n# o
. _+ i6 P v9 i5 ^; {& _ public Activity activateIn(Swarm context) {, n- C. l6 q3 Y5 M+ z3 {
super.activateIn(context);
: F$ s" R* a' Q$ w/ @+ y# {7 W schedule.activateIn(this);1 }0 s' h$ s0 i' t, `
return getActivity();, o" r3 G* w- g# i r
}
, ?2 n1 o. I! x% C4 {
: B3 m: u% j7 d3 q9 A* N public static void main(String[] args) { T' J5 H- V, F" Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ f" M- G# j5 b \) l Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, `8 p% A n# u0 I; v* Q2 H" h- P+ y0 a swarms.buildObjects();% ^( j4 u7 w7 f5 q
swarms.buildActions();$ T/ Q$ Z: [" A K
swarms.activateIn(null).run();1 u9 c: p1 ]( r7 `. q" p$ r
}
& U3 G: k" g3 v4 \0 z& N$ ~1 n# b u6 B7 O/ x W1 l. W
} |
|