|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& \5 a* f# }+ b4 u" M
c, B Z: \$ }/ t) ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 E7 F$ N2 ~, q# \" Q. j. t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 w! t( j: F% I* {- R" jswarm.SignatureNotFoundException
6 h9 ~( Q* j' ~ at swarm.Selector.<init>(Selector.java:76)6 F: U' P6 H0 [9 S. v
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. k, ?' `" {- D6 Z6 A3 S! V at ActionGroupDemo.main(ActionGroupDemo.java:67)6 E9 j! i8 W0 y8 E9 m
; T+ ^' h. l" Z: y" X$ \. P! r$ b0 ^6 M4 p+ s3 J) h
import swarm.objectbase.SwarmImpl;! F, a/ k) c, k+ @0 S
import swarm.objectbase.Swarm;0 Q- z' x" N4 P4 g7 z U# a
import swarm.activity.ScheduleImpl;
Y; h u# t1 W, X0 cimport swarm.activity.Activity;
( n8 r" `2 x5 Wimport swarm.activity.ActionGroupImpl;
; I8 h8 c9 x3 a5 Nimport swarm.collections.ListImpl;" U* D6 J# W4 H' ~% q9 p
import swarm.defobj.Zone; / |' m# j/ B7 X0 e- k& O9 w# U1 W8 G3 a
import swarm.Globals;6 o, L6 e/ v' W% F
import swarm.Selector;. s' m4 O% ]6 ]3 S" ]1 L; S) K
import swarm.activity.ActionGroup;
7 C5 h" E/ B' S0 w. B* |6 qclass Agent {" v$ H. Q0 D& `* W# {, D
char id;1 ]$ `$ z5 y( J/ | k' d
. G3 a3 V2 F# x$ R4 C Agent(char id) {2 }& u8 H, l8 s! m
this.id = id;4 Z% b g. m6 G: g
}. }6 a/ E0 k; I
1 y: e, `6 D( D9 h# m, g7 P
public void agentStep() {
: N1 D) q7 E( d5 c System.out.println(id + ":" + Globals.env.getCurrentTime());1 S! D8 {7 i0 s# T& T V( B+ R/ m
}7 y- ~" Q8 q) S: D4 D
}8 o, F" \7 u% I
8 s* s! @/ V. u8 e1 i2 c
public class ActionGroupDemo extends SwarmImpl {% x+ Z b7 f6 R7 q; ^3 `5 m
ScheduleImpl schedule;
( [, {+ Z( q0 G6 P ActionGroupImpl actionGroup;- g8 ^. y( D9 i5 T" \7 B( S! X
ListImpl list;
4 W* D! p6 |- K% N$ m& E _5 E; t char Id = 'a';$ t% F5 G( m+ Y S. r
( x+ U2 {2 a" V
ActionGroupDemo(Zone aZone) {: v9 O7 N6 P' F. S C) W! R
super(aZone);
# C) f5 m' ^' t$ l' U list = new ListImpl(aZone);; c5 z5 z8 y$ W+ |! [# e1 v
swarmSetp();
6 X8 p5 u5 W3 R& L: w: ~) A actionGroup = new ActionGroupImpl(aZone);
. M: p5 j3 k m6 p# P schedule = new ScheduleImpl(aZone);
% Y0 `1 n' B4 N- p% |+ c9 b try {( r# \( V! P8 U; N% e7 A
Selector agentSel = new Selector(Agent.class, "agentStep", false);2 b3 Y) x8 W% L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# A8 S4 i L* P7 D1 S: D1 R5 l9 K
& ^5 J) ~8 P1 \* y3 U1 l/ i' c actionGroup.createActionForEach$message(list, agentSel);& D l/ Q/ @: c3 L3 R6 N$ u/ |
actionGroup.createActionTo$message(this, swarmSel);
: Y! a2 i8 n9 N schedule.at$createAction(0, actionGroup);, H1 F+ q# k9 Y3 c
schedule.at$createAction(1, actionGroup);
0 ?! Q1 C2 f3 H9 j9 {' H* D; a schedule.at$createAction(2, actionGroup);
, S5 j- ?. z3 c+ p. V( s f5 e* p; g" ^. g* @ i G
} catch (Exception e) {' T* O9 t' M% u4 k: a
e.printStackTrace(System.err);
4 ~3 l h. |* B2 [ //System.out.println(e);
0 y1 M; n4 \& d; ?: J4 h7 L1 [ System.exit(1);
# I/ {* P8 N" T* [ \ W }
- K7 c7 B' B, f7 v" w* |: d. b; g6 u1 @. z. Z+ n! f
$ ~7 H. x3 r/ l+ w0 p) F. L
}
, u- C x8 p3 p" M7 ~7 g' M. w) h$ F2 I. L) _
private void swarmSetp() {
5 n: b/ a" o/ I' s3 C list.addLast(new Agent(Id));
" ?8 Z8 f% O( w( F6 `% I Id++;# w8 k5 Q& `. ?: \' A
}2 ]: I- t3 Y; w2 Z" o9 D
, n' P% b- X h8 d public Activity activateIn(Swarm context) {
7 B' H' j% X. K+ `$ v& @: Q super.activateIn(context);* ?! X1 o* S1 }4 Z' @
schedule.activateIn(this);* c1 x! }4 d$ F0 [* c) z( M
return getActivity();
; |% s- M5 ?' z* v \; x3 P1 [ }$ c0 A( ~8 G* _' D, w1 \ \) J8 \
7 N& n9 Z9 z7 H' \
public static void main(String[] args) {" o* @& z y) [6 C/ h( }' L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, `8 o3 O* x9 h8 b: R' [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# q! R+ k- m5 a1 `
swarms.buildObjects();
& r3 @2 s8 q; w% [; ? swarms.buildActions();- w. e) h q' k& ]1 Y
swarms.activateIn(null).run();+ G* }0 H9 P+ P* ]2 b
}9 e- m9 Y% n' O# F+ P5 s
( M$ I8 H! x0 K: U. P
} |
|