|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 M' k" o4 v" U* i8 b+ r! V7 l. u
) n; f7 ~" h3 O$ ^% u+ u1 N1 N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' A+ N6 o7 [" d2 c, v* O+ n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 B# h5 V% y+ a; @8 L
swarm.SignatureNotFoundException7 M4 f! K: b3 {$ g1 y9 |( \
at swarm.Selector.<init>(Selector.java:76)
4 @# x& N: g( Y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 S7 D) \( B% U1 U; T, a$ h0 z at ActionGroupDemo.main(ActionGroupDemo.java:67)
: y; b' B8 i x& y* T6 k C0 ~# Z/ F; h n- l0 `# J
" O+ |' Z$ ]6 h
import swarm.objectbase.SwarmImpl;( J5 X* `/ |# Y0 C$ x
import swarm.objectbase.Swarm;
" g \- H5 t i) K3 l) a; K( fimport swarm.activity.ScheduleImpl;5 ^2 }. g1 y! A" a# Y' N
import swarm.activity.Activity;
- Q0 j4 l4 s$ w1 {0 w: Oimport swarm.activity.ActionGroupImpl;
6 N" R, r+ U% a7 |import swarm.collections.ListImpl;8 {' \) X0 T! V, i
import swarm.defobj.Zone;
7 W( ]$ I4 U5 R: A! w% I; a3 |8 Kimport swarm.Globals;
7 {/ Y2 U8 D: c* ~4 j5 aimport swarm.Selector;/ |2 \0 W# u) O, K- T6 d
import swarm.activity.ActionGroup;
" Z/ X. R' G3 ]; [class Agent {# U) Z _5 @4 y4 a7 e) J
char id;/ R$ ` B' w: w+ K0 P; N( p" X
8 m2 V5 U) f" x% d Agent(char id) {
2 M1 ^. T0 Y& ]. N6 t* m this.id = id;1 `8 n9 @& S- f+ T
}9 `! G) L6 r( T- d+ u- ~) N
" A1 t4 p, j: _& k# Y1 O3 Q public void agentStep() {: c/ I4 x1 H G" W$ a
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 P8 A& a- ~: g- Y }! z6 V! {6 L4 T
}9 F7 P' A/ W3 l$ G# c
. m; t7 M; c' a1 c2 d
public class ActionGroupDemo extends SwarmImpl {& X* c6 h" N9 T7 m. l; V# k5 Q# E
ScheduleImpl schedule;
( C0 F% {. P$ g8 N6 F; u ActionGroupImpl actionGroup;0 Q! X8 ]8 c- u+ Q/ j2 {3 w
ListImpl list;+ |# T/ |( L8 I! M8 o% j3 } C
char Id = 'a';5 Q8 N O! b# J; g1 v4 a0 g
, j( f' A' a* ~ `/ I/ `% ` ActionGroupDemo(Zone aZone) {
, X& k' G( N d: w4 {/ Y super(aZone);
2 F p i/ o1 H2 D/ p5 a! k$ u list = new ListImpl(aZone);# \* a }3 j. o4 {& K
swarmSetp();% q5 c; k8 d# R+ {- d/ N
actionGroup = new ActionGroupImpl(aZone);
5 `" k7 R3 }% v schedule = new ScheduleImpl(aZone);& f$ j! ^+ w' V1 x2 A% q( g
try {" d4 r u- e0 @& {% H$ L4 A
Selector agentSel = new Selector(Agent.class, "agentStep", false);! P" ~0 m. y% q( a! ~6 i& j7 G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" @% h3 B! D6 o1 \
+ \0 k: O) Q) A4 S" u4 Q+ m
actionGroup.createActionForEach$message(list, agentSel);" u- Y9 E* P. J& A+ M
actionGroup.createActionTo$message(this, swarmSel);% S& U1 C% u0 ]5 ? l! k
schedule.at$createAction(0, actionGroup);0 S0 V0 _3 S: \1 C9 E
schedule.at$createAction(1, actionGroup);
* g3 v% \/ O1 r0 Q% l& U schedule.at$createAction(2, actionGroup);2 a* J, Q4 E1 L; i- p
' {- O7 {, b- N2 _
} catch (Exception e) {, x& o& p0 v# F! n1 Z! m7 G
e.printStackTrace(System.err);
8 {5 P0 t. X* m- T, g //System.out.println(e);6 M# E( B: Y' O: d+ H! T
System.exit(1);0 ~* @5 p( V4 U" E9 D" d$ a
}
: u( O% F, r" U8 B7 `3 D3 V6 l9 N0 b0 ^% w: u
! z$ I v/ R% X1 N
}
, K9 i1 u6 h0 y! H& d% i' D& L" G
, B! ^% {) j8 E+ l& L! { private void swarmSetp() {
7 J( r5 i7 q! c# M/ i* a) m list.addLast(new Agent(Id));' B5 N w$ b7 C" k, u5 @" [9 y( O
Id++;8 K9 H/ J5 n; I2 c2 U
}
T7 Z+ @8 X8 g1 [1 u! v
~* N3 r( Q7 X! t. e public Activity activateIn(Swarm context) { O/ Z* \8 M" D' m) e6 h- L3 y
super.activateIn(context);
1 l. y) G6 k, {2 f$ ~2 W; L schedule.activateIn(this);4 w( C; c m) m( d
return getActivity();7 t) d4 c% t8 a
}
) p; V) L$ \% J; Q) g0 ^4 Y! P" y/ H) ~9 ?4 _
public static void main(String[] args) {
1 D; A, K D! [: G& x; H# W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ G0 y6 d+ ]8 l/ n, f: }3 \, T+ _% G
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# W2 P9 K _: R7 o- }: D! w swarms.buildObjects();; B( A+ [ o8 G( A& S
swarms.buildActions();8 s) }1 x0 A$ t. t7 N
swarms.activateIn(null).run();
% _# ~# `2 C" a/ @9 Y2 n3 l4 I }# T1 I0 l8 S2 d
- t" B* s2 K; l4 k7 q7 X} |
|