|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ j8 J( l% F& \) a6 q5 I, P$ I$ q6 `6 H* I6 B! V, {; n# d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' @' Y1 Y2 c+ w' F2 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. C" l0 A) N2 _* J$ `, A% n- qswarm.SignatureNotFoundException
H' ^& g* R5 R+ i; R; M! r at swarm.Selector.<init>(Selector.java:76)2 B* l/ i' S6 l5 }! L* p, x
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 I7 @ |! P4 J5 C( c3 b at ActionGroupDemo.main(ActionGroupDemo.java:67)" R- r8 O: _; b- `- P
O! O. r, B: p/ ` u" j
) d4 [% J$ B. L2 {& W- A) @import swarm.objectbase.SwarmImpl;
7 t4 M$ H2 q ^+ zimport swarm.objectbase.Swarm;( B* h3 u' u& v: |
import swarm.activity.ScheduleImpl;- {/ n9 I' v; v y4 T
import swarm.activity.Activity;
) e5 w3 R* Z2 a' t" C* ximport swarm.activity.ActionGroupImpl;/ w7 V) p2 ]! ~( Q! o, Y& u5 n
import swarm.collections.ListImpl;
! @& _/ y6 U5 G* r8 r1 Nimport swarm.defobj.Zone; 6 _& u. Q$ |* j Q: @! w4 a
import swarm.Globals;1 }9 @ P3 H1 F( Q
import swarm.Selector;" r; A# U; \; S) E2 G; j
import swarm.activity.ActionGroup; / b3 G4 Y% Z. S' p
class Agent {; A- |3 F( a1 p* A+ ~
char id;9 _, A# h0 ~9 Q
9 L" y! ^% R# a* Q5 r6 F b# l
Agent(char id) {3 ?: J; z- V# }8 k9 N6 K. y
this.id = id;
+ y% b: C+ I) F7 m0 s+ f }
0 P3 u( B7 k+ t( v- \/ d, }8 `& z# o
Z3 c4 I4 l9 R6 e1 D7 n public void agentStep() {
% y' I" G0 F2 ^. I! e5 e System.out.println(id + ":" + Globals.env.getCurrentTime());' f A4 o8 K% a* {: ?$ u( g
}
9 X5 _& u+ K6 q, d) c}- K; ~ U& G s5 k. {3 Y
/ q) u1 V( Y0 i$ \
public class ActionGroupDemo extends SwarmImpl {3 r+ O4 L2 a# C; C; @
ScheduleImpl schedule;2 I+ R# e* k1 O# M7 ]6 t8 S
ActionGroupImpl actionGroup;
" _+ V9 f; @' k' L ListImpl list;
9 ?5 r- E3 S3 @7 S& J char Id = 'a'; O" r) \( ]" s. ~/ ~3 |( I
+ `' p# ^# Q% r: b, P
ActionGroupDemo(Zone aZone) {
* B4 e) Y- Y4 q; ` k super(aZone);5 E6 A2 b0 d4 h8 ~ A
list = new ListImpl(aZone);
& \6 _) \9 v) A7 A: _ swarmSetp();
9 X5 B: K) |* v actionGroup = new ActionGroupImpl(aZone);
3 K8 l8 Y! c ?+ `3 s) ~3 M schedule = new ScheduleImpl(aZone);+ T! Y1 S; c3 G$ ^9 \5 {
try {1 X- Q+ [7 |8 C5 f+ P( |6 {7 W
Selector agentSel = new Selector(Agent.class, "agentStep", false);, Q6 q- Y% }) _) i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 i( a7 a- I$ T. R; w
0 x$ N B" V+ P0 b actionGroup.createActionForEach$message(list, agentSel);
' s) P. A {6 A5 |1 o$ g actionGroup.createActionTo$message(this, swarmSel);
; l4 p j* H7 B schedule.at$createAction(0, actionGroup); q3 A+ a B4 r6 t1 v6 ^1 t' G
schedule.at$createAction(1, actionGroup);
# _: T- q; b. C' d- z schedule.at$createAction(2, actionGroup);
+ ?2 g$ }( i2 q2 W* M( i9 O
+ n3 s" D$ t& A2 z8 o } catch (Exception e) {# U% R9 O' L2 ~) r1 h" _5 |# d
e.printStackTrace(System.err);
6 u F5 m7 X: [0 v //System.out.println(e);
- i8 d3 C3 S' D% y# |7 ^ System.exit(1);
/ F5 l4 Y4 o$ N [0 W9 v* F }& T2 v4 U4 S2 p9 ?' @* C7 [7 c
& }% G2 y& E4 u( [- e
- b; K4 m3 F( o }
) W5 }4 z" r% ^1 b$ d) D+ y) I1 z7 v; T! m; z4 N7 p9 F$ W
private void swarmSetp() {
+ w" k! ^* y+ v6 i% H list.addLast(new Agent(Id));
" ]+ a5 N! E1 | Z* T Q2 ~6 b Id++;
2 x/ [9 q& m# r. w }. L# Q J3 ~1 Y0 [3 {
) d$ [* p+ @! W9 x public Activity activateIn(Swarm context) {
2 R) z% k8 y$ b1 r N super.activateIn(context);
. ^$ D/ }, _" Z' D0 l1 A: A schedule.activateIn(this);% ^& B& B% n4 g! P7 [3 h. Z5 `& O9 {
return getActivity();
: b* h3 d# U% X8 ?6 s }& e. w; g9 O4 G- R& T% w
+ m4 C, K8 Z( L' v4 e E: |8 x public static void main(String[] args) {
2 O; p' L6 `! r& P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* h$ n/ U! ?! d$ k u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 O1 S' X) r' J+ M3 G
swarms.buildObjects();
' c: u3 S1 Y( D, X$ g* r swarms.buildActions();
F1 ~% j, }1 ^$ y swarms.activateIn(null).run();
; I6 Q7 A# G8 b/ {1 B5 O" O }3 O* @& W+ P% y Y% V
( ~1 S: \) ]4 G( ]" H" D8 C} |
|