|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" A' r8 x$ c9 V
# h8 {7 D u3 ~, k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 e" b2 |# {! P' ]" x" h( s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ h1 Q+ `) k3 J- e4 O9 C
swarm.SignatureNotFoundException. _/ \8 z8 R$ r, i' C9 ?
at swarm.Selector.<init>(Selector.java:76)1 c, c! m( r& z' @* n+ }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% u! B; ]: H" i5 y: m4 w) E at ActionGroupDemo.main(ActionGroupDemo.java:67)% A, i: t4 j* r9 S
' w5 ]( |2 ^& ?1 T2 |( u
- Q8 w T5 s. U- N8 p
import swarm.objectbase.SwarmImpl;
/ ?% p: b y3 t- `2 }* l4 m" r+ fimport swarm.objectbase.Swarm;
3 c. \/ Y) k8 Qimport swarm.activity.ScheduleImpl;
3 t( M' E( ^' a6 E7 x& aimport swarm.activity.Activity;
l% [: \0 T+ U9 G% \import swarm.activity.ActionGroupImpl;. L3 B3 }4 j: k5 e9 g4 @& a* ^! N
import swarm.collections.ListImpl;, B: X! B- k3 p7 D7 P0 u
import swarm.defobj.Zone;
* r4 d. M3 W5 o6 U9 ~9 n5 x ~) {3 Fimport swarm.Globals;5 L, m' I8 r, P3 s
import swarm.Selector;
) [9 [. n" \$ b9 aimport swarm.activity.ActionGroup;
) J+ F' ?: u# o# w* Oclass Agent {& X, W2 y5 n3 Q: p& F$ G: C( U
char id;+ }! x4 z5 W7 z2 _0 B0 k) Y
" g0 c8 H8 W9 }- w$ L! @6 E Agent(char id) {9 t( e/ u+ t7 [0 a" T& a, ~7 e
this.id = id;
, I3 y @( w& v9 H; W1 l }
/ t% ]5 ^' F' z) {8 r) Q* W1 S+ R
& x' j& ^1 z( S, R9 i; e8 |* U9 P! Z( L public void agentStep() {
( O$ l, Y4 V' y! d3 L% d System.out.println(id + ":" + Globals.env.getCurrentTime());' F. @6 F* q$ K
}; n5 S( p' g& }7 y, {8 U: N
}
0 Q& {; R0 d. z% r
7 \- h" ~/ e: a1 I/ q* kpublic class ActionGroupDemo extends SwarmImpl {
1 S6 V- V3 P9 a3 L7 ` ScheduleImpl schedule;/ ]7 [- l- Y: b0 o" k
ActionGroupImpl actionGroup;
" k* k/ a. R5 @1 Q: J ListImpl list;
& i7 Y! a2 u+ Y, ]/ |0 Y char Id = 'a';
9 ]7 M3 h7 U" F |+ }& S0 r" ^1 L. `- X" R4 [
ActionGroupDemo(Zone aZone) {. u/ q4 u7 j. q$ {* l) Y0 U
super(aZone);
. |/ a' L* z5 H5 P' c/ c list = new ListImpl(aZone);) U7 U: y( p8 o2 D" k+ a8 [
swarmSetp();3 `" c) G& F) `9 H0 o- V+ i
actionGroup = new ActionGroupImpl(aZone);
) ?( r; B9 n+ H; x schedule = new ScheduleImpl(aZone);6 x% `$ G6 K9 C$ h: @( \
try {# O' D+ C& I) b# d4 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 B* K6 C. s9 X& E, p
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. X5 Z* D( s6 x9 X, Y1 o6 L/ i' b8 t / k9 y s6 A) L2 T) @
actionGroup.createActionForEach$message(list, agentSel);8 f3 ?. X" }' k5 M' [* o5 c* P
actionGroup.createActionTo$message(this, swarmSel);
: L: D W4 z6 n/ O/ U4 ]* H% _; h schedule.at$createAction(0, actionGroup);( ~+ O& P/ [: \7 {" l
schedule.at$createAction(1, actionGroup);. K) m$ x2 m, ~8 s& a2 H M- o8 i; l
schedule.at$createAction(2, actionGroup);
) [) X" Y, X) D Z( @" O
`9 I9 [! @& _' a4 x' z } catch (Exception e) {
) r6 b8 |- {4 f/ p, F3 t. Q- I) D e.printStackTrace(System.err);
5 ]" c4 B, Q2 i5 W" F) V: K3 _3 v //System.out.println(e);
5 Q6 x7 s6 y, L3 e5 ]- Y- |+ Q5 j System.exit(1);
" d4 D2 J, z# X, s( a3 B( U }9 j4 n0 e+ Y' R Q! U0 A$ v
. k: E1 ~9 p& f) i+ J) D' h+ H% }$ f
4 f" c, J, t R7 K
}0 g6 M O# x# r% N+ I
2 V3 o1 n) y4 _% C private void swarmSetp() {
- W8 N9 i4 F" U9 p' l) w) }2 Z list.addLast(new Agent(Id));8 s* K6 S9 X+ W- C3 K$ d
Id++;
" F( S- o1 ?' ]( {- ]0 G }
% L0 p* Y' b5 ?! {- \. O6 y9 y0 l3 p& Y
public Activity activateIn(Swarm context) {5 t; v5 L, P9 }5 Q5 [' U1 I
super.activateIn(context);
, W: n+ ^8 |! |% | schedule.activateIn(this);) f) R6 r5 H$ [% G" ^2 _
return getActivity();2 \; S. g8 E; c' u9 U
}
/ `' M. A" o. B O a% ~; `
& s' L% \; ~0 \ public static void main(String[] args) {
! i8 ]' a8 h8 Q' I( i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
X0 g; e; @! H7 [ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 {. H* x0 a2 G j1 c- n J swarms.buildObjects();
# `1 M4 s3 t q( K% ?7 j swarms.buildActions();0 w; e9 X& ? h
swarms.activateIn(null).run();7 A' k- S. n, A
}
8 N3 Y( ]: y4 C3 k: s' @6 I
& u3 m5 r Z! x} |
|