|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 ]9 Y0 E4 t% `, a
: D" J1 ^: a+ V7 d+ S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 X X! [# j1 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 C9 a$ Z* W! w- l3 N& j( H3 r5 ]
swarm.SignatureNotFoundException9 m0 ^+ C- p7 T9 W
at swarm.Selector.<init>(Selector.java:76)2 f8 ]: N; f$ }/ \9 j* A
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& a* f9 @- \& |: {& g at ActionGroupDemo.main(ActionGroupDemo.java:67)7 u5 G$ x1 h* g
# x" q6 j; X( G4 M
% ~% }; }8 [; F$ b2 Mimport swarm.objectbase.SwarmImpl;
. j# W2 `1 ?+ n+ c$ wimport swarm.objectbase.Swarm;
) F* f9 }# F* r7 v( Y5 q8 Kimport swarm.activity.ScheduleImpl;. n9 E0 v0 H0 d3 W- R
import swarm.activity.Activity;1 p3 f' E- F' @% x. S
import swarm.activity.ActionGroupImpl;9 C0 Z* X4 z7 q+ u. O( b V" x& M) {
import swarm.collections.ListImpl;
/ R6 r5 ? J0 h/ M; ? gimport swarm.defobj.Zone;
; O! n+ B) K+ ?import swarm.Globals;* G1 m& a5 S* Z
import swarm.Selector;
& Y6 {% }1 a# C/ X3 O4 T" }( i. j/ ^import swarm.activity.ActionGroup; ' P. R( X: x+ ]# F
class Agent {. p& r N+ f7 J# H r
char id;% q3 W4 z+ I$ N9 |% J# K. h, b5 p8 H
, |6 n8 W& T$ \7 F1 \
Agent(char id) {
& }0 j+ e+ [( G& P E' N this.id = id;! r: S4 x7 J" g8 I% W$ |# Q: L
}- L6 i' [& q0 V. G: l3 y
: P: j2 n8 a' ]) B) p' m9 M, h public void agentStep() {1 c; F# h; K7 u. z+ G' `, @& v
System.out.println(id + ":" + Globals.env.getCurrentTime());) A7 R5 x. f3 b* k+ }
}- Q4 q' A2 b/ Y: |. N# ?; A
}
# a! i- G- a2 H* [1 o( r% t8 z
8 b" G$ s& ], O: Opublic class ActionGroupDemo extends SwarmImpl {& k( n. n* x2 Q2 `; ]
ScheduleImpl schedule;5 b' O4 W# n. u6 u# ]. \" K
ActionGroupImpl actionGroup;2 F5 k+ T5 @+ N# ^- \5 h
ListImpl list;8 Y" [/ o4 q. Q$ S% a* n0 q4 Z/ H
char Id = 'a';
% s# s& i$ W3 N* G' A/ U7 ? Q+ k
ActionGroupDemo(Zone aZone) {& r4 A) F& Z% \' V
super(aZone);
7 y/ b K" Q% {1 }# D. ~ list = new ListImpl(aZone);
4 J3 M! a" y7 }6 | swarmSetp();7 T4 a1 {9 P" d
actionGroup = new ActionGroupImpl(aZone);( V" W8 X9 K9 \4 t6 i0 j% L0 B0 |
schedule = new ScheduleImpl(aZone);
t$ l: p1 L1 L) S: }( S4 L% G7 A7 U try {
# c7 L, a7 Y6 r Selector agentSel = new Selector(Agent.class, "agentStep", false);! Z1 F8 |- v; H# Z: N; K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# n' t! [5 H1 M+ X( Z0 c " t5 p9 x4 A9 a
actionGroup.createActionForEach$message(list, agentSel);
7 l8 Y' t* {1 z7 C actionGroup.createActionTo$message(this, swarmSel);( U: V* o# h3 b: S" x! ~
schedule.at$createAction(0, actionGroup);
$ Q# V9 |( |$ B1 o/ k& z3 x9 o schedule.at$createAction(1, actionGroup);
$ S$ _2 w% R& K schedule.at$createAction(2, actionGroup);8 _: |9 G. E& g6 l* x* L( U$ _
# H* G5 R# d1 g } catch (Exception e) {6 z, G6 O* s+ R2 m7 H
e.printStackTrace(System.err);
3 O9 D, F$ t4 \4 k //System.out.println(e);
+ \4 i J, [1 ~ d, ] System.exit(1);
3 g, ?7 ~% V3 ^5 t# x }
0 i# H, q, {' e- R
- N; v# K) ]2 s" l* k }& N0 K) F. c, n
}
) ~- T# H9 Q, s; ^8 W
' ]( y* A2 C( `+ X" `" n4 Y private void swarmSetp() {
* @4 ]! O6 z% n7 \2 ] list.addLast(new Agent(Id));" ^, g+ f0 U# O. M% [
Id++;, ^7 k% l% d8 P2 H, }* l; N
}
3 Z+ ?7 A4 z. s: c3 }) R& G+ A8 j1 W2 O
public Activity activateIn(Swarm context) {4 W: k- M5 q3 m! i
super.activateIn(context);
$ G, t7 `. e1 j, K$ ` schedule.activateIn(this);+ j- A% Y0 H2 G* o. {
return getActivity();' Y) G. [6 P+ [% \
}0 k7 h! _" M; R7 x Q4 D
6 t; z% Z. R9 L2 {4 H0 A7 @1 d+ N9 ^ public static void main(String[] args) {( K& K. }7 i+ W% W) `
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' b, S6 ?: X4 y6 L" a7 Q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) Y6 `3 b# i- e2 o4 L1 v swarms.buildObjects();
5 ~% j1 G5 v4 v swarms.buildActions();& r' U' r* U4 f. U: W
swarms.activateIn(null).run();
u& l0 z7 X/ m }! b# g( `2 |) `5 V! |+ S7 h
\4 ~. Y' _3 n$ z/ ]/ z
} |
|