|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ B3 W Y5 u- F2 }# L
8 j% o0 W. y9 `8 H1 N& G+ w: Q( Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 T" S f) x3 V0 f; R7 X7 q. \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 k. E! I/ c5 U
swarm.SignatureNotFoundException
* Y: f0 z; d( N at swarm.Selector.<init>(Selector.java:76)
* o P/ W2 ]5 O. p0 M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 x& Q! m9 y# e- g5 i& O/ z7 I at ActionGroupDemo.main(ActionGroupDemo.java:67). H2 W! `: T, S3 _, e9 O& [% Z
2 l( `0 f* O \0 G7 E1 I3 H- V
- Z! \6 X) Q) k( B
import swarm.objectbase.SwarmImpl;- A' U5 u; _2 G; I1 C
import swarm.objectbase.Swarm;8 h+ S3 h/ v! q
import swarm.activity.ScheduleImpl;- |: N8 F% y: F: C$ J7 ~: u
import swarm.activity.Activity;; v( K9 T4 {) @7 D- I
import swarm.activity.ActionGroupImpl;
: w6 q, F! D+ Z8 Jimport swarm.collections.ListImpl;
^' N4 n% Q/ T4 A% rimport swarm.defobj.Zone; 3 l8 Z& @9 E- m$ l, d% Q( Q% v
import swarm.Globals;
7 a( u4 m3 }! q: {9 s2 v+ fimport swarm.Selector;# w0 ]2 v) W/ @
import swarm.activity.ActionGroup;
5 o! ]0 Z, m6 E+ b% f2 [' j! m `class Agent {
- Z4 U; ?( e2 {# F, ?' {2 e/ G char id;* u+ Q0 G+ z3 P: d; g7 b
+ F7 ]2 H! _2 q1 E6 Q: A( W4 K Agent(char id) {: \: J' u* K* @
this.id = id;, ~% W& ^. M4 A! G& t
}+ X/ y4 ]; `. a9 E
( U& w# { r, G- E% E public void agentStep() {
& k3 w/ }' O: D C: @; B V System.out.println(id + ":" + Globals.env.getCurrentTime());1 S; N K i, `4 W% k1 U, z
}8 N7 _+ F/ J5 l7 `8 b/ q" A
}. F0 @6 }0 k' \, o
, g5 P% j9 H: q: ipublic class ActionGroupDemo extends SwarmImpl {- }6 {2 N+ u, w1 [& C9 ~
ScheduleImpl schedule;8 J/ ?- |% ^) w& u
ActionGroupImpl actionGroup;+ U* t4 L) h" e; z" o1 V6 f
ListImpl list;3 Q1 m( v( p( M d$ `0 n
char Id = 'a';& N4 j6 W) q. l/ ~+ z
. V6 k% U, b W4 w5 P
ActionGroupDemo(Zone aZone) {
9 A' j# `: z# J super(aZone);
. u7 U. H% i' c# h( N list = new ListImpl(aZone);( Q, q- G( k( m& \8 _/ ^* }4 L
swarmSetp();
$ L' A/ J# X: K" [! X8 C" @ actionGroup = new ActionGroupImpl(aZone);$ l1 R: `3 O' D
schedule = new ScheduleImpl(aZone);5 _( \! T! M; i: ~% U% `) H
try {2 p8 Q) f2 Y. \, `; ]% P
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 k3 h. {- I5 A- w3 [0 H Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 b8 F+ C7 \- R. K
( q. o" |9 y& H s actionGroup.createActionForEach$message(list, agentSel);: ]% C: f ~3 h+ U
actionGroup.createActionTo$message(this, swarmSel);
5 _5 C) H% i$ W! o2 ~ schedule.at$createAction(0, actionGroup);
, K$ c% e2 v8 F2 q) i3 o schedule.at$createAction(1, actionGroup);
2 Y. ?9 z; E$ Y' F schedule.at$createAction(2, actionGroup);% d' E3 T; i- \6 s2 o1 T
T4 t: C0 n7 e. [2 {1 M& H( ~! C
} catch (Exception e) {
9 j6 {; b0 @, W( U5 ~% R e.printStackTrace(System.err);
; X, L# q" P. z* Q8 o: G5 S //System.out.println(e);
! }1 P, u: a( M4 \1 _" a System.exit(1);" O, i: h3 ~; P9 }
}
1 C5 u5 g" D. Q- t# T% q
+ ?6 r7 [* X2 Q# h5 P0 t. O/ `5 i& ~1 s3 `8 T |
}& ]3 L7 R o0 w( E8 ~( N t0 ]2 }
1 P4 _4 G, X. l! a private void swarmSetp() {: |% w7 D2 c/ x7 i& n
list.addLast(new Agent(Id));4 N/ u; G6 e# D- k0 S& p. D( H
Id++;
3 y6 w o! k5 S" H, U5 L! j }
. `& C4 O. B, p4 w: \! F/ U6 p& E
+ k. j7 y, v, @5 o public Activity activateIn(Swarm context) {+ X( [8 x7 ?6 S
super.activateIn(context);+ y9 Y8 V% s) j
schedule.activateIn(this);
5 v/ G: q! v/ y9 _6 V- o) I' e: \ return getActivity();9 X2 R3 D9 q; K2 B. e
}
' I4 \, H8 s0 g
1 ?* Y8 K6 F' K/ W public static void main(String[] args) {- w1 `0 K. R/ z7 ]% w
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: A* f( L4 a' L0 Y5 z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); q# Y/ i& F1 e/ j4 x8 P( C. ~. `
swarms.buildObjects();$ K4 s+ g% t- E5 \- [3 ~
swarms.buildActions();
. H+ Y) A- q, W. o1 t2 f8 h swarms.activateIn(null).run();
3 o Q9 }, Q- q }# J' a* ?- O. I6 {
4 G) A8 ]2 d$ X2 `} |
|