|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " D4 X; q. [3 N( b6 L4 P3 S
5 A. M" L( t1 g/ {4 i8 b0 }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# b+ U7 e! O/ P# a/ ^) t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) a& Z8 b' l* m5 [% `) K
swarm.SignatureNotFoundException
' V6 K. _, j: o at swarm.Selector.<init>(Selector.java:76). ~2 a6 E6 U- [3 K& d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 v# A7 {+ G( i3 F( V) L
at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 j. n) c8 f3 J/ Y N; p, A; h/ Y
& t% d, |+ r/ T' t/ T: z( ^0 D
4 {- Y/ {# b+ J- Gimport swarm.objectbase.SwarmImpl;
+ x1 \7 |# n5 d% m+ N+ a/ Z- _import swarm.objectbase.Swarm;
4 @6 l2 p, E8 s0 ^% a+ V: Z& c( limport swarm.activity.ScheduleImpl;
7 K7 F2 r3 Y, C: X0 U( w9 x/ C. mimport swarm.activity.Activity;0 D- l$ J2 O! N4 Z# P3 e+ l
import swarm.activity.ActionGroupImpl;1 U! u9 t3 h! T8 X
import swarm.collections.ListImpl;7 e0 r }1 v5 n% |
import swarm.defobj.Zone; 9 j5 k" i9 F. [$ n1 j2 }
import swarm.Globals;+ q: o. @" w1 P5 H' w
import swarm.Selector;9 [! f$ `6 C$ a" u
import swarm.activity.ActionGroup;
" O1 Z" N. c% M$ Cclass Agent {* z. v" I r0 Q) \
char id;7 H: w" X! F. m3 u6 N% m' |
$ K) B6 p" r) f$ E7 N$ y" g2 k Agent(char id) {
) f" C" i/ o5 w# \" T1 v this.id = id;" F5 l! e. y U) Y0 [7 S
}
8 d' }7 ~! b( `6 h8 s5 a6 Y
/ f" G7 h, w. {7 K) | public void agentStep() {: w) a6 ~3 u4 E: y9 w( B
System.out.println(id + ":" + Globals.env.getCurrentTime());- J1 p8 e0 k' l1 \3 j% F
} O* N6 x1 q* E+ H
}
% l8 c; }$ \7 z" _$ _7 a% g3 q1 \! X8 u2 R8 p
public class ActionGroupDemo extends SwarmImpl {4 G# _. O' r. \
ScheduleImpl schedule;4 n \5 B( l+ ~5 N
ActionGroupImpl actionGroup;
1 ~) Z# }2 C2 m$ N5 M* v ListImpl list;
8 u' P6 e0 O& R/ ? char Id = 'a';- z3 ^& c1 V h& ~; n4 U' e8 k
! Z: Q5 X! ]- N& ]
ActionGroupDemo(Zone aZone) {0 U+ @5 o+ K. ]+ Q$ \
super(aZone);" P- j7 d1 d4 }# h% s2 e/ a- t
list = new ListImpl(aZone);3 t* W: Z) y6 i1 l
swarmSetp();- x$ C0 @+ r- q7 L2 m" b4 h! y
actionGroup = new ActionGroupImpl(aZone);
, {. }2 a @+ O& E: E; t1 y( H schedule = new ScheduleImpl(aZone);- O. F" s J! V% s& o: }% V; e0 D
try {/ Y7 {3 E1 \$ H( z
Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 R+ D/ q; u$ ]& T @ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. k2 Y* `- x5 T1 Z
F5 C" @( @8 j8 d: {
actionGroup.createActionForEach$message(list, agentSel);4 K2 A. Q5 _& N4 F7 a- L1 u
actionGroup.createActionTo$message(this, swarmSel);/ Z R% g! ^( H- i& [3 `! F
schedule.at$createAction(0, actionGroup);- `9 @* a: \ F" ^6 a) g% T- N3 w
schedule.at$createAction(1, actionGroup);
% w+ t* q% j$ G8 ]; O schedule.at$createAction(2, actionGroup);3 S7 d1 p. Q. S* k& k9 Q
) n( [; K9 j8 Q1 A8 B+ W& y" s
} catch (Exception e) {
# J( }4 b# P3 Q/ c* x$ P7 t e.printStackTrace(System.err);
8 f9 j* q0 \, `& p0 J7 k. R9 e //System.out.println(e);/ ^. _& z* l* \9 U' P2 Q
System.exit(1);
4 l6 M1 J9 ^* Y/ t0 i1 K }- O( W: G: G: |) J5 r7 }
9 A- T) W4 Y% E Y* |" z
) d! S" H$ y. I+ V4 G" q: e# h }
- q& X# V9 S8 b7 n, d9 T+ [ m( f9 {/ A8 F& \. w! w/ G
private void swarmSetp() {
. Z; Q! G N& N7 ?! A5 e! b list.addLast(new Agent(Id));
) }6 G% f1 W; J+ |7 y: V& Q4 b5 Z Id++;
6 |( O/ q- W* k1 { }- t1 g o- M/ P3 H6 P
1 H# ~/ T( m* a; L2 V, V9 C public Activity activateIn(Swarm context) {' q) {+ J2 w# T1 M0 k$ m6 x
super.activateIn(context);$ |' P$ |# G Z
schedule.activateIn(this);
+ f- ~5 `1 Q' C4 ]9 ~! n; p3 L# p return getActivity();
0 B" x8 ^9 J) B' ?3 n }( \! H5 s$ {) _/ e$ Y
* L: w1 m7 p1 j* J2 T0 q
public static void main(String[] args) {- m3 V* r- y0 Z9 X) I/ T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: K3 Z! u- t. A% F, r Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' z! g- v% {% g5 {7 g/ u
swarms.buildObjects();+ q' w+ w" x' ~* {
swarms.buildActions();4 I% h2 D* E2 p0 b0 A) H6 F
swarms.activateIn(null).run();
, R# q! {9 @$ h8 v/ g- b3 z }* t Q9 V8 C9 n: {$ q! _
& W+ r" `7 L8 l} |
|