|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 L- a* x$ C1 ~) y) l" x6 x) ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ D- R, `9 i( d$ J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ C" M) g5 T4 b+ `% y9 f
swarm.SignatureNotFoundException% z9 \9 U+ j3 H9 R0 @8 r+ b- h
at swarm.Selector.<init>(Selector.java:76)
4 ?) N% x( s; A! V# w0 B" k3 O at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# m0 y9 J8 B9 S( e t at ActionGroupDemo.main(ActionGroupDemo.java:67)
# O5 T6 d) @0 f" T, G& d6 ]8 T7 X6 v* r
, Y3 \# `1 Z; I8 ]5 T# _; B' T$ e
import swarm.objectbase.SwarmImpl;
9 t4 J* w* y9 j ` h6 q) gimport swarm.objectbase.Swarm;
3 ^ w+ ?0 \& w2 S* Aimport swarm.activity.ScheduleImpl;
0 p7 U5 ^* @3 ~: J' |$ Aimport swarm.activity.Activity;
. ~5 F. i* g5 x9 [ ]' [import swarm.activity.ActionGroupImpl;& d% _9 l# U& B. g
import swarm.collections.ListImpl;
' Q/ }" N% \+ z' dimport swarm.defobj.Zone; : z7 j4 F$ y5 j' e' I8 c* [
import swarm.Globals;5 [$ V! v M! U) m; p8 m
import swarm.Selector;
- D8 E I6 K/ z: A l% r% z6 e6 |import swarm.activity.ActionGroup; + }& v. V# H8 l* _
class Agent {
2 l( d: v* r- g& w" B char id;1 T; q4 G% P) J0 R- w- v
% a1 B5 L* g7 A8 D9 G2 N% ` Agent(char id) { ^ q$ {+ N2 Q
this.id = id;
; o1 H, ~9 \( D. ]0 } }
/ Z) k5 [# K" }* b; ^# z. L! n' x3 u' l
public void agentStep() {
8 c% T; ?" G* ]* n* i0 x0 H! ]4 b System.out.println(id + ":" + Globals.env.getCurrentTime());* ^. q& r+ o! i0 V5 o
}
3 t) n& T6 v2 D4 M0 S, v. w}, y. _# p1 H4 q* U
: F2 X1 F x \
public class ActionGroupDemo extends SwarmImpl {/ n! |0 r# P# x: Y
ScheduleImpl schedule;
8 A: \" k- E, \, b ActionGroupImpl actionGroup;( _) @0 R( E3 s4 |
ListImpl list;# y) ?& L u' j4 m4 }
char Id = 'a';
( y5 E+ l+ @( w: e. _8 A2 t; p7 L! }( a( |7 r2 v* L; F# u
ActionGroupDemo(Zone aZone) {
' q h5 m$ {) a' H7 _0 O! |$ F super(aZone);
# Q7 i( ] ]- P* U- K: H list = new ListImpl(aZone);
- `4 a' z0 K+ S G6 _/ _ swarmSetp();
/ V: m5 S: V0 n% v actionGroup = new ActionGroupImpl(aZone);
6 M7 K) J4 M9 m% a9 B schedule = new ScheduleImpl(aZone);3 V: g! z8 I/ e2 z& s
try {9 f! I; p5 R" \' x- k
Selector agentSel = new Selector(Agent.class, "agentStep", false);! g% q* G1 _# E( Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 A3 x" W7 m. P
/ G6 Z. i5 |9 U actionGroup.createActionForEach$message(list, agentSel);7 m* T" L J* X- t
actionGroup.createActionTo$message(this, swarmSel);& G( {9 T6 n, Y. B
schedule.at$createAction(0, actionGroup);
2 H2 r: ~. y7 r5 U/ S, } schedule.at$createAction(1, actionGroup);( {" K% a9 A9 l- I$ P$ {8 Y
schedule.at$createAction(2, actionGroup);
7 D% v6 X/ |* S8 g: i
4 P3 N+ w+ Y% q4 C } catch (Exception e) {+ w& n( }+ o( J; Y
e.printStackTrace(System.err);
B) `4 j. l2 R/ \7 m+ P) O //System.out.println(e);0 z" I- b) x+ a
System.exit(1);; K+ z2 t, p! @3 O9 V( M
}
" m% Q8 M+ j; `3 y6 s. l4 s2 Z% V8 G' P9 o0 Z! f% p
+ s5 s6 Q8 g! ~* Z }
9 H0 {( l) a7 p6 c0 s5 g
e$ N/ z: v' _6 R private void swarmSetp() {& Z4 k9 ]9 @/ T; C- M' F, U
list.addLast(new Agent(Id));
" Q! `3 [6 c5 P a* U. V+ K8 ? Id++;. O; s3 ~. r! Z" M$ e5 G
}$ f% r+ D3 T" |/ N4 i
% E, [9 T7 U* E+ p% H2 x$ P' f
public Activity activateIn(Swarm context) {
; f! E3 U5 Q6 D7 v# F; c8 } super.activateIn(context);
S% c( F" k4 G8 b; f- s schedule.activateIn(this);
& E( f$ s2 a4 ~- V2 e" `2 w; a return getActivity();8 D# k- O% B9 |4 z
}
1 ^1 O0 L" h0 @' n( b4 E; @0 o. w d s" ?7 a
public static void main(String[] args) {# @% d8 `4 x2 X3 {+ q3 Z- u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 O! T/ V, Z0 t; b; M1 U' }9 j! T Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 M9 P5 P1 I2 z0 r
swarms.buildObjects();
X/ L5 @) F" D; O! B swarms.buildActions();
* {, r$ Q1 e- O8 t; c8 C swarms.activateIn(null).run();
; j: j& F4 g: F- f5 s }
* W2 y' o) i2 D& H5 S+ I' M% ~( j9 x3 Y9 L5 m8 N1 X9 B' W# j0 E
} |
|