|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % W7 | c) s0 q* H8 V
% E- t( [9 X' F. X) F# d5 i. [, u6 U6 B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, `7 n2 [' ^/ U! w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( ^0 q4 g$ |* dswarm.SignatureNotFoundException
4 c$ w! L2 H+ v! K* Z2 L! { at swarm.Selector.<init>(Selector.java:76)
. J$ Q( \8 ~8 J4 \( \* \- X/ D- T at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 S: G7 P2 o! n# f0 u
at ActionGroupDemo.main(ActionGroupDemo.java:67)
& \* h) m0 o3 M7 P0 U& h9 X+ T6 H) L
* b& W* t6 O0 B- q# v8 w- G" a( t8 |9 [! Y8 w
import swarm.objectbase.SwarmImpl;
# h4 W& ?' B& b5 p" oimport swarm.objectbase.Swarm;
0 t) ~' `# u- ]6 Yimport swarm.activity.ScheduleImpl;
& u6 T( m! n9 ]3 I: ^: zimport swarm.activity.Activity;/ p+ z* C4 ] G
import swarm.activity.ActionGroupImpl;
6 w; M: z! L( ?3 Qimport swarm.collections.ListImpl;
* Q8 l5 B) D3 p1 E! H, B/ gimport swarm.defobj.Zone; A8 F+ I7 e, t P$ x1 A1 t
import swarm.Globals; N% `" U/ [0 H; H8 T) v
import swarm.Selector; J3 j; S& ^ c: i i
import swarm.activity.ActionGroup; * o2 q4 Z& G' [, y: R
class Agent {: K# z1 q2 F- h0 p3 V* R
char id;
0 b# g: y1 k3 l2 w5 R! M& O% S& v2 Z/ y
Agent(char id) {* v, g5 t# [& e& C
this.id = id;
* b* ^7 _( R+ o }2 a+ p# G& N, H
5 ]7 K4 \3 j9 I3 Z6 t
public void agentStep() {
$ ]) ?) s8 Q- ]/ I3 ? System.out.println(id + ":" + Globals.env.getCurrentTime());5 e% G$ v: q9 y- }8 [4 e3 g8 b
}
' g% E# F) U: j0 j0 |, c}
1 i' R0 X+ W$ y) Y" T6 t+ I
3 N; s1 a* j+ g' L% P2 j) r# { @public class ActionGroupDemo extends SwarmImpl {
3 n$ v* Z$ A: r* g# ~/ Y: m ScheduleImpl schedule;
+ V S! i; S2 h ActionGroupImpl actionGroup;
5 E- g7 r9 J% i ListImpl list;
7 m( V* ]5 e2 j8 ^5 T# u& y char Id = 'a';
6 ^+ ~3 @/ K* M; V) i( h" X2 k1 D) K/ s6 F* k J. S9 v
ActionGroupDemo(Zone aZone) {9 r% H( e3 n) \ }# {
super(aZone);7 y% D1 `- t, t: w7 X! O
list = new ListImpl(aZone);6 j; k4 r7 a8 @7 Z
swarmSetp();
9 K) }0 f6 a5 ~ actionGroup = new ActionGroupImpl(aZone);( `# j; c2 r- i2 u# i+ t7 _
schedule = new ScheduleImpl(aZone);. ]$ R" k. m3 `) v
try {
5 G+ q) Z! P i& T( ]" m7 ^# K; f; ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);
# T& [! \! @2 b* w% O6 z1 r- \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 {; G% W0 e6 R# y$ q7 n 6 e7 L9 ` F$ Z' _2 p
actionGroup.createActionForEach$message(list, agentSel);
9 i" F5 ~0 T @ actionGroup.createActionTo$message(this, swarmSel);) u, k, x: N! r% c
schedule.at$createAction(0, actionGroup);) p0 O6 I$ B% l# ?$ j0 r6 Y
schedule.at$createAction(1, actionGroup);9 p0 M6 o/ e4 W4 m! H: I: E
schedule.at$createAction(2, actionGroup);
Q, ^8 t: h; Y2 ^8 m
5 J& H9 u' j5 l B } catch (Exception e) {
9 `! L( o% b) K+ f* I1 ?: S3 ] e.printStackTrace(System.err);
3 r5 ]0 h% {4 X& H) ]5 G //System.out.println(e);% d, N0 a' n. L9 b
System.exit(1);7 @. H; U9 E. @, L% a
}& M5 @7 j- p4 v$ ~( L5 G# o
# }' P& I9 a! g4 {5 u* F% d( f
7 m) b9 @* D g4 l" |) S! q* ~ }$ C: p! U, W* M
; a: O: B) K) S6 b$ Z
private void swarmSetp() {$ a- o- U' w1 c+ g0 a8 V
list.addLast(new Agent(Id));* I( q1 g9 U3 ]2 z
Id++;
; G" Q+ a/ F9 k }( @4 b W% g; `% k# ^
+ p: M4 {4 I" O9 g public Activity activateIn(Swarm context) {: C q$ c: @# V! R) Z2 K
super.activateIn(context);
3 _4 L6 e' b# A3 d" S1 j) R schedule.activateIn(this);
; X) S+ Q: Y" p" N+ }0 O return getActivity();7 Y3 z8 f! d0 M% D. g
}
2 R" U& f8 s% K" b i
}/ j7 b) B& s$ A% g, i public static void main(String[] args) {# z# t3 @* m1 D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* g( `+ L, ~# i1 k+ k$ o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 i0 I3 A$ g+ H" E
swarms.buildObjects();
# ^1 U# h* V* z- G, W% h swarms.buildActions();1 J3 k! l7 Y( o6 s9 ]
swarms.activateIn(null).run();
! f& A7 F8 }2 P }3 V' q5 K3 u, `3 x1 o
) f) G1 ?) M2 j( a# K" {) ]: I
} |
|