|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ C! j' x0 g; J
6 P5 F. F/ i" Z4 K/ {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& C- V' a* B/ V0 ^4 f, V7 L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 _$ B; T; T' Y1 E9 Z$ u
swarm.SignatureNotFoundException
) q3 q+ U2 x% k% o5 \3 @2 _& E# H% N at swarm.Selector.<init>(Selector.java:76)3 L% y" p" Y# R7 h3 {) [9 W
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ r+ e$ m- q1 `2 ^5 V8 ]3 f( K! _ at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 Y7 L- q+ ]" W( m
9 W2 V4 \" J, r" C# y* B1 F2 ?6 e; c5 ?0 c
import swarm.objectbase.SwarmImpl;
5 J: z9 W! H6 p7 A& Q% e: G' Oimport swarm.objectbase.Swarm;
0 T) _$ F: p- Aimport swarm.activity.ScheduleImpl;
+ S# @) `) K/ c( Uimport swarm.activity.Activity;+ F: [0 F$ E: f. Q9 o1 r
import swarm.activity.ActionGroupImpl;1 X$ ~; U$ b' M0 n
import swarm.collections.ListImpl;7 b- D) g. J V3 X& K2 t( r
import swarm.defobj.Zone;
K9 P3 g- O6 F* ^) Aimport swarm.Globals;
: s0 }0 B' S @4 ]7 simport swarm.Selector;: X4 r6 u! Z* `/ F, {* |; a/ x
import swarm.activity.ActionGroup;
I4 t, D8 {5 f2 fclass Agent {
& W3 o2 W' O1 P% I% r1 K% Q char id;
) O* k# P5 A! Q" x& H
5 K, ~! Y2 w' z E Agent(char id) {6 @- o5 ]5 V" ^
this.id = id;
6 R- d. J7 n8 c, z! s' q7 ~1 I5 b }' K3 ?8 \# z/ N5 a7 O
8 D8 _8 |9 H! l
public void agentStep() {
0 J1 J+ L1 @& u0 o* _* @; T' i System.out.println(id + ":" + Globals.env.getCurrentTime());# e" E9 }0 S7 Q: ?+ N, n3 d' X4 O8 f
}
5 H) J+ c' y$ W5 S0 ?0 Z}* \. |2 A D7 z5 B" m- G; R/ r
* T9 r- U8 O% a# M, k$ S; W
public class ActionGroupDemo extends SwarmImpl {+ ]! U4 r$ ?# O$ o# x: c: t+ x
ScheduleImpl schedule;
5 S, Z9 ?% J) y0 p: N5 q! w ActionGroupImpl actionGroup;
$ Q8 l: z& g8 i( a* V" F. t1 v ListImpl list;: ]% ^1 P: i+ @+ A, _
char Id = 'a';/ y$ ~5 t+ Z. r$ `0 C" h0 u5 l, W/ m
$ |$ t5 E0 L4 l) m, c% x: a
ActionGroupDemo(Zone aZone) {
3 W, _, j: J ^2 ?7 y9 T; J super(aZone);% @2 Q) ?& ~" i4 D
list = new ListImpl(aZone);
3 U, a7 v6 t+ J9 r3 s$ P2 W! f swarmSetp();. o) @# D4 L: q$ G" E! c7 `
actionGroup = new ActionGroupImpl(aZone);
8 i9 l& e2 {. q: a7 y5 M3 t/ X; @ schedule = new ScheduleImpl(aZone);
: K% c8 S _+ |+ K9 N try {# X6 s# Z9 O! z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 s6 {4 D- U: F1 z& \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 i; t0 t2 ]4 M8 D3 p) q
* X) t5 T6 i a8 j actionGroup.createActionForEach$message(list, agentSel);
) ^* ? P$ h# ^: M4 n9 J9 ?7 C actionGroup.createActionTo$message(this, swarmSel);2 g! A- ]! m: h2 ? Z
schedule.at$createAction(0, actionGroup);9 j4 V( M. P) {
schedule.at$createAction(1, actionGroup);
: L8 |7 d6 ^, i schedule.at$createAction(2, actionGroup);
! W! k9 d* K5 G# M2 E+ o
. j& Z2 ^1 d b' r: o2 S } catch (Exception e) {+ h R* p& F/ F# u4 ~
e.printStackTrace(System.err);
4 L7 \' F4 ]0 p9 G" a0 V //System.out.println(e); G1 N4 l* K+ U
System.exit(1);* E3 O, e2 J" L$ R
}8 @) Z. {" ~/ P% y* V
5 i+ ]. J( W! u3 h2 ?* g+ R `4 f. D9 W( n) z
}" ~6 l( c3 v: b4 E" i
0 @* T1 h: R+ s4 P+ x; W private void swarmSetp() {
# z! L/ y. w1 i, h |% ] list.addLast(new Agent(Id));
. _4 I+ u) H4 }% S7 O. U+ ` Id++;9 x. U" j) T, G7 ^6 d
}
: e7 O0 ?* y. {& g/ Y( p( O' ^" J6 m- v0 S$ T! j" I
public Activity activateIn(Swarm context) {4 i" E# d4 @" X8 f3 ~0 } O
super.activateIn(context);" A; G; o. u M# X& d& v# h
schedule.activateIn(this);" g6 p4 X, ~: Y+ n2 S
return getActivity();3 C4 \' Q1 m; z4 c! L9 W9 {
}4 s9 [2 ]% l# N/ q" ^% Z9 X
0 q3 }8 V' {% T% e$ Z$ B. _8 g) [
public static void main(String[] args) {
" A5 s5 p. @+ \4 P, v Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# @0 B: E' X" k8 l5 D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ Q* x9 A* F+ r; @( S& D
swarms.buildObjects(); q! u0 @2 Y( d2 @0 W }
swarms.buildActions();
+ ]9 i' D2 Z( ^7 Z- H' y0 ? swarms.activateIn(null).run();$ G2 x' [6 L+ I/ z8 C _# Z3 w
}& Z" ~9 M4 [6 s! y0 V" [
) R& P+ k% d& E4 E# q
} |
|