|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . f1 C6 D) E% h; }1 f3 I. c0 Z$ J
, n, {. p5 Q+ i) }* Z9 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 Z. B* }9 W* K2 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% C4 T% M! a# H4 Yswarm.SignatureNotFoundException+ i3 M/ {% H2 A- t$ y+ }
at swarm.Selector.<init>(Selector.java:76) _+ T0 q' y( d& `4 y: e' E; Q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 Z- t1 e7 i5 _ at ActionGroupDemo.main(ActionGroupDemo.java:67)/ t0 b1 L$ B+ ^' B& Z7 U
) H$ L9 X/ t6 M7 o# L4 i9 Q
z4 j: o) [, d2 A* u* `0 Yimport swarm.objectbase.SwarmImpl;
* r4 }' W# A, B, S+ Q6 S1 Z0 [+ \$ bimport swarm.objectbase.Swarm;
* J% h3 G8 J% u. A' U: q& c1 H# Yimport swarm.activity.ScheduleImpl;1 ^* D* I, L/ D; O- H2 ^
import swarm.activity.Activity;( [' w$ N n3 Y- x2 k, ^2 M
import swarm.activity.ActionGroupImpl;! Y# U" C n! b" f
import swarm.collections.ListImpl;
5 B0 s) b* l' [4 ~! F1 {import swarm.defobj.Zone; 0 ^! }3 |, @; V8 W6 w& k
import swarm.Globals; K1 p: G% w( z5 A) J, V8 ^, L
import swarm.Selector;
% T) c* e* }1 S6 }- {0 Oimport swarm.activity.ActionGroup;
8 F2 N, N9 r& u" v! |$ Bclass Agent {
1 L8 k M0 y" L0 @& v( W& ?% V char id;( I* w# m7 ~# h C7 o
+ a/ n! H6 a4 f% p" E Agent(char id) {# R7 b: P6 J ~4 O, \8 R# f
this.id = id;: S% i3 H: @2 }2 t7 T0 \3 _$ t
}
% l1 f, Y) N' t5 R
9 N- J( w( k) R0 }( y; M. N3 d public void agentStep() {
/ I/ e6 f! H( ]7 q System.out.println(id + ":" + Globals.env.getCurrentTime());
9 d6 W; ]" f$ w i! ~: a }
% J( m4 C) `, I}
D+ a0 E, y( Z" h9 _' d
, S% [, p% w7 Wpublic class ActionGroupDemo extends SwarmImpl {
9 a$ u' g- e6 O$ m ScheduleImpl schedule;
; Y+ r ^, D, c$ e1 Z; a: G! G ActionGroupImpl actionGroup;
% v2 l/ f. [* F5 l ^( | e ListImpl list;
( ? e: P, g: J1 b# i5 n( Z/ A6 x/ n char Id = 'a';' U6 _* T! x: U0 B6 c) f& h' F
! H4 d5 Y* }3 r5 y8 X. w& M
ActionGroupDemo(Zone aZone) {
# Y, n+ z! q4 I: @- R+ g; w super(aZone);
/ O; W# Q/ e. M# F9 |4 A8 C list = new ListImpl(aZone);
. B/ S; I# Q: ?, J6 ^ swarmSetp();
' _/ H6 I* j3 j# F- u5 _0 P actionGroup = new ActionGroupImpl(aZone);; b# S5 F" J& ` d& m( x
schedule = new ScheduleImpl(aZone);5 \' j3 `) Q1 J
try {
7 |2 [# S) D0 W0 D+ F. J Selector agentSel = new Selector(Agent.class, "agentStep", false);
& i* {3 l( A5 H% j. d3 ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ i5 |* b) }% x# i$ \
! P) N, t* W$ p actionGroup.createActionForEach$message(list, agentSel);
6 |7 g/ ~% i% X Q$ L( J actionGroup.createActionTo$message(this, swarmSel);
7 c. m. l6 E! @; C5 ? schedule.at$createAction(0, actionGroup);9 M7 w2 h" d3 s6 f8 `
schedule.at$createAction(1, actionGroup);
) F3 s- m- |" y3 c6 r schedule.at$createAction(2, actionGroup);7 }9 W' L6 |9 c* [. `
! b/ [' C% l: q9 \1 b% o( x } catch (Exception e) {0 B" j9 D3 o% z4 K6 L5 ?6 j8 Q
e.printStackTrace(System.err);
b: z3 s8 Q9 d //System.out.println(e);
. ^1 ^% q/ b/ _* F9 c5 b& D- j2 a System.exit(1);; A$ R9 z2 q9 C( T, }7 n
}# p% n" x: u5 E. L ~
+ `! q* ~" O" s) w$ k
3 `& I% F' x" w0 J Y
}1 Z# H" H4 @% |5 E2 x/ C3 U# E
- _4 _9 z1 s t; u2 j, F$ E0 N/ ~0 v private void swarmSetp() {
% W; g) v* ~1 ?. m! J" d list.addLast(new Agent(Id));, w/ G: Q& |* ^9 g7 m) o
Id++;% U. N' S& |3 D' t& v' [4 V/ j8 `: w
}
a) X1 G- ^/ u8 P0 r x3 z- u1 y- H/ H
# ?# M6 k) [5 D- T# B3 S4 N8 \: o/ J public Activity activateIn(Swarm context) {
7 H1 N; _. f# J" R# O6 r super.activateIn(context);6 x8 j9 d" B% ^5 w; b8 Z
schedule.activateIn(this);* m" n1 m# v1 j3 V. M$ \
return getActivity();# }: K: A( A" @0 A
}8 N1 c& ?5 @* a
% r% ?" G0 F5 Z
public static void main(String[] args) {
3 S! e- K+ m$ {+ j0 o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( [. {, I6 @. u- t) s Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& |; @4 y% {) m/ j
swarms.buildObjects();
2 j/ Y5 Y) H) z6 i# Q% }) | B7 X swarms.buildActions();5 Z( t5 l/ P1 B$ j$ y1 Z
swarms.activateIn(null).run();& h; m0 o. f/ J" u8 v# x- i- j
}4 ^' b/ G3 E3 ?0 R* M7 Z
) h" Q' V! N! V) |+ I5 Q
} |
|