|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 m1 p! }; m/ ]0 q5 A
) t" ]- m' O) D) e. P& ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 X; E/ r( W. j- q3 ^7 X# k( H0 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 S: |+ {4 P, T! B% z' L% h5 ]
swarm.SignatureNotFoundException
: T/ G v1 K% D( V2 P9 U5 W" B' _ at swarm.Selector.<init>(Selector.java:76)
& M3 f9 u' y' g: z7 j at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! H* A+ X, N# c
at ActionGroupDemo.main(ActionGroupDemo.java:67)
H( m, e8 C6 ?- I& |% k( J4 N) T8 {5 G7 s" ?# s1 g% P
S9 d5 Y0 X. X
import swarm.objectbase.SwarmImpl;
/ Y' C$ q6 M' ^import swarm.objectbase.Swarm;( Z( V) p3 G3 D2 ]3 c8 w5 X
import swarm.activity.ScheduleImpl;
, Z$ L, V _2 D4 ~9 Q9 yimport swarm.activity.Activity;. [$ ?$ g. E9 f/ m, c6 N
import swarm.activity.ActionGroupImpl;
7 L% J+ W# G5 y7 Nimport swarm.collections.ListImpl;
6 C3 T# {- n5 E$ H' ^. Limport swarm.defobj.Zone; % z H7 R9 l6 m$ }8 {* m+ a
import swarm.Globals;
) Y% Q, _1 O$ L$ e5 a0 y4 \import swarm.Selector;4 R% O3 V/ ~: s
import swarm.activity.ActionGroup; + d9 v6 S- ?% a5 t: ?
class Agent {
( \; G8 b! U5 g- @ char id;
( K; n$ E' U! U$ r+ I4 W4 Q& A+ Q2 u% O/ f p, C% t6 H
Agent(char id) { |' X9 l$ f9 l- F
this.id = id;4 y( I3 J4 Z- k9 ]* [- {
}
% ^0 _5 S7 n6 U6 g' r9 @- k+ W5 U! N+ Z L
public void agentStep() {- M0 p+ z8 ^6 ]7 m9 l* o
System.out.println(id + ":" + Globals.env.getCurrentTime()); H' J, b$ l3 H* Y' I: E* b
}
; m. x9 C% q2 Y5 R4 _. e}
* W1 |9 A1 Q/ J6 j3 X- x/ J
( T8 F6 G( L8 _7 |& ]public class ActionGroupDemo extends SwarmImpl {$ T/ J, v* d# E) B' |
ScheduleImpl schedule;
! ]2 {. q" X& D) J9 H, p* O ActionGroupImpl actionGroup;
% z+ p+ J2 o$ R ListImpl list;
4 C6 g4 V& s3 A char Id = 'a';
; P/ y) j5 y) A+ L) x
$ s W# k% U) [0 w8 h# C6 i ActionGroupDemo(Zone aZone) {
0 ~! m! {5 w& z! u" v% m+ y! \3 _ super(aZone);
, c% ?# \% S: G6 G& E* e list = new ListImpl(aZone);" H( t) V) d' f$ z2 s4 B& R
swarmSetp();+ }- o! r4 s o$ H) z1 |
actionGroup = new ActionGroupImpl(aZone);
$ H/ C0 B A/ l; L6 U schedule = new ScheduleImpl(aZone);$ o! F% I0 J' b9 r8 Z
try {$ a8 N) b3 B# D) G/ [7 r
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& Y. k9 O0 h1 @9 m# y9 {% ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. }0 E/ {7 R' j' [
' c5 Z' @& ?$ s+ L; ]3 {
actionGroup.createActionForEach$message(list, agentSel);/ N* M, F$ b8 U: h
actionGroup.createActionTo$message(this, swarmSel);7 \7 p2 b0 O0 L& D5 I
schedule.at$createAction(0, actionGroup);
/ I6 ~7 i$ H& K9 S, z& c* e schedule.at$createAction(1, actionGroup);
7 Z/ U1 F. Y; O6 H$ A$ @ schedule.at$createAction(2, actionGroup);& B7 P+ Y9 R6 y' y# L* J( Y
$ x* v9 E- m7 Q: g7 c l8 Q } catch (Exception e) {5 s1 G4 {% }5 J+ X0 U
e.printStackTrace(System.err);
7 T# b1 e7 u, K! B: Y //System.out.println(e);
0 K2 r# y7 T% v* c+ V( y System.exit(1);1 P. E7 Z1 x( D1 Q! P) k
}
( H1 r' @ C) @! p
" S- h% k3 `* B; r% B n( u
: U3 n- t5 V2 @% P( B, y& _+ l }
5 H% f- _1 k- ?0 a2 T
- k& O; V* m& l& z2 w0 Z( ` private void swarmSetp() {1 `% w- r7 p: W
list.addLast(new Agent(Id));
6 L [3 R: \# t" r# { Id++;
# C- q8 @9 X4 } }; p ]2 `1 U7 c
) C( ?0 D7 h( m+ K# {5 V& N public Activity activateIn(Swarm context) {6 B4 R3 E9 B# e8 z, f5 b; y
super.activateIn(context);
9 M1 r. L4 `1 A) ^ schedule.activateIn(this);
: i4 J7 c0 l9 I$ O" U% |3 S return getActivity();
7 M! g: G, e: P4 I }
/ J: e- m& G/ h% X* t6 k/ p7 d
7 e; B9 H) A* O7 @' P3 z- [3 z, Y6 d public static void main(String[] args) {4 F& X( _$ r( {: ]0 p& Z4 }* n
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ i4 L9 i' g- s. Z9 M6 s# u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" }" i1 K& }" R& ?0 I
swarms.buildObjects();
$ L2 A8 v# i' V9 B swarms.buildActions();
; E& ?8 C* w7 `( h8 Y swarms.activateIn(null).run();# Q/ B) y3 H+ [" ~
}* J* g3 M9 x7 K9 u6 `
9 r; L( J0 w" n# F
} |
|