|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( I6 ]/ \' b, r
- a, Y G$ b% [7 j* I4 M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! q% C$ x/ G* V; D5 b; W& w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ N. ^3 ~' C' e7 E) ?& u
swarm.SignatureNotFoundException
. D9 Y* z$ u& @& D1 z0 B7 P( E/ E) R at swarm.Selector.<init>(Selector.java:76)) u4 ^* D( c7 _, u- `0 S' [# O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! g3 f9 v3 b( t/ V
at ActionGroupDemo.main(ActionGroupDemo.java:67)
) O+ q7 Z1 p4 B+ u
- z! x! Y( S2 @, C% v2 L# s& Y
8 [; b; c2 ~2 o/ F8 x( Dimport swarm.objectbase.SwarmImpl;
/ L$ {) f9 `* oimport swarm.objectbase.Swarm;
4 P& B' ? V/ g6 T1 o0 E2 S6 G. T% Rimport swarm.activity.ScheduleImpl;* D& ^/ ^ o3 A! w
import swarm.activity.Activity;0 L" s( ~. ]6 ]. B; B3 g
import swarm.activity.ActionGroupImpl;9 `; U: n: I, U: p, _7 _. x( m7 n
import swarm.collections.ListImpl;
. ?+ ?$ @$ y& r. E6 L0 dimport swarm.defobj.Zone;
4 T% R7 F0 {8 Y4 t/ ^import swarm.Globals;1 O$ S5 p+ e' ?, I8 Z/ d
import swarm.Selector;
" `/ F) b/ j" J& P. simport swarm.activity.ActionGroup; 0 T- Z/ ^: |, `! F) F' i) T
class Agent {/ d( |: J0 w, W. N
char id;8 ^7 N' |7 ~/ q1 B- ^2 M# ? V5 r2 l
% z( N: s" N6 b! ^/ h1 A Agent(char id) {
( Q* Q5 ]& U8 F9 [ p: m this.id = id;+ S" D! z% U% p: @
}5 M% T# G. X4 u0 Z* y3 @8 \
2 S7 W) Z! S3 k) E) j Y public void agentStep() {
5 P' @$ S! [: X3 W" E/ V; w System.out.println(id + ":" + Globals.env.getCurrentTime());
! J! x4 M- z5 ~# G( N8 Q9 w }# c; U9 r0 E, M' T& [9 g6 R
}0 d9 J+ j8 _1 s* j8 e
0 i$ f' n8 x: M0 `3 X8 gpublic class ActionGroupDemo extends SwarmImpl {5 E" x5 ~6 ]0 l+ y3 Z* t- E
ScheduleImpl schedule;8 b4 D1 v+ {5 e: o% \! z
ActionGroupImpl actionGroup;
0 W! D5 p! m" z$ u( l: {5 a ListImpl list;6 X1 H1 l! Z" X, n( x3 Z0 {
char Id = 'a';
' {, Y' @& l) H5 c4 O2 a
; z9 v0 ]$ R7 _! E4 D( I ActionGroupDemo(Zone aZone) {
! }1 J, `$ n k- ]3 F, g. y super(aZone);
6 S6 |4 N+ g( a3 ?4 w list = new ListImpl(aZone);
' o. S; T# p3 u4 Y3 ?/ a' M swarmSetp();
& E* I t8 |1 s actionGroup = new ActionGroupImpl(aZone);
7 o5 I7 c4 h* ]! U/ v( J: O$ J schedule = new ScheduleImpl(aZone);* v' |' d3 i9 o o) q0 _: M5 u- I2 S
try {7 x6 L# O+ \4 d. s* f
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 o7 k) H: p9 G6 p8 L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; p. C s( t5 Z# _2 g; v 7 ~$ ?! f$ B- Z+ f$ b
actionGroup.createActionForEach$message(list, agentSel);* X4 q6 H, I9 C% ^8 S9 \2 {- u
actionGroup.createActionTo$message(this, swarmSel);
' Y ?( G& G+ e# Q/ x schedule.at$createAction(0, actionGroup);
$ s, V; t* j1 _& F schedule.at$createAction(1, actionGroup);
* V4 [1 k. }$ I2 ]* T$ `" @0 Q. l schedule.at$createAction(2, actionGroup);8 r2 [8 a/ Z& k( u& Z) O8 j' v
$ u' w% @' O" \! F% ^4 n- p6 i
} catch (Exception e) {+ w+ p: ]' C% |7 a4 E
e.printStackTrace(System.err);+ \: P9 u/ C" A3 U; Q8 r
//System.out.println(e); f p, q* n/ r% @6 z
System.exit(1);% |+ _; h4 f; w5 q1 F( i
}
/ I6 \3 N* V( c* u! ]$ B
, E2 l+ j$ ?) V
8 V! w: ` ]5 U }
& F# m, b) p- \+ K! {8 o3 M- x2 {6 A& U; ?
private void swarmSetp() {. K+ i0 `* A! z1 w4 k" N T
list.addLast(new Agent(Id));
* I- _+ }! x+ E' i Id++;: c$ ~" J8 r8 B, a( F$ ]% [/ l( e
}
4 N+ D. ~2 P. Z; x0 U4 l; `
7 l0 m2 L5 j8 K4 Y4 a* z8 n$ B public Activity activateIn(Swarm context) {: `6 ~; h* ?) e* ]7 q9 Y7 @6 \4 A, G
super.activateIn(context);
8 m, c ]9 O+ x' Z schedule.activateIn(this);
4 p& E) x5 ]2 o) o3 l, g. a return getActivity();7 \2 u+ q3 {, s) H# d" }- g
}
7 g4 ?8 L( V' J5 K( ?6 h) u) a2 X( m! C) k1 M$ D! T5 K0 ^
public static void main(String[] args) {
; j; m b9 Y0 N/ s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; D. ]& k3 B% J0 ]% W
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 }9 W4 a/ Y! f( |$ M4 M5 D' K
swarms.buildObjects();
: T; j& A5 I; W5 T9 ` swarms.buildActions();. H' ~ x" c M
swarms.activateIn(null).run();
- y8 d7 I: u! w6 T O1 n' b, W }
: Z. q* T, c; l8 {3 f/ {& w" j! p6 }$ s) y
} |
|