|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) b9 g# [) ?7 ~. }: b, w. V& W0 O' U% f* j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 R% x) J0 Q. u) U5 ~+ g7 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 ~" o9 y; L7 I: f7 e- V, ^3 ^swarm.SignatureNotFoundException! p% E2 v7 `% m% S' d
at swarm.Selector.<init>(Selector.java:76)
2 Z" @% f( e c5 r! P4 }* V4 n; s at ActionGroupDemo.<init>(ActionGroupDemo.java:37) p" @% j5 ~3 `& Q A
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 p; ^# X* n8 j _1 H {/ F, P1 D0 s, X
% R1 E# D* D- o* S3 F# wimport swarm.objectbase.SwarmImpl;9 E& W3 J" B# p& p, Z
import swarm.objectbase.Swarm;
8 m8 {: ~) j! Q5 p1 E! G8 ximport swarm.activity.ScheduleImpl;/ D# m4 h# t" r- d) h2 _
import swarm.activity.Activity;
, m- c. l/ s5 P4 u% Q7 C5 P: Gimport swarm.activity.ActionGroupImpl;5 G1 A( s$ }# P! m- B6 E' k) m
import swarm.collections.ListImpl;
5 [+ e; V* I5 oimport swarm.defobj.Zone;
( H, K1 ^1 G9 Vimport swarm.Globals;
. m- \+ k9 p- l! h0 ?& O# ximport swarm.Selector;+ L7 \# Q, U" s. R+ j# @
import swarm.activity.ActionGroup; ( E9 n0 n7 e0 f3 Z
class Agent {. X& Y* b% g% B5 G
char id;
) [: ? p9 g/ }# A) v e& x; r+ a# J) V) I
Agent(char id) {- `7 w3 z/ l0 m+ N
this.id = id;3 `$ m; B. t# g* }/ h% u6 x( H
}
' O/ h: G6 J. B8 `# T3 s" V; e, X8 [+ Y' z- `" m1 k& G& v4 n
public void agentStep() {" z5 z U* H9 e# j
System.out.println(id + ":" + Globals.env.getCurrentTime());
* g/ W& A3 t" ^+ d- \# c0 |3 W }
* {2 L/ Y" V0 v, N% b0 [* }}6 V: f: _, c H8 p
0 r' Y# ^! A' Ypublic class ActionGroupDemo extends SwarmImpl {/ e4 x6 k7 n( z
ScheduleImpl schedule;
/ Z6 v$ N9 [# X7 x' ^8 l- s ActionGroupImpl actionGroup;
* i8 _# d' ~' r0 }+ c" \( p ListImpl list;
& _! |. V* y5 M4 O. o2 _8 ~ char Id = 'a';
- A8 p$ U; U0 ^# \) M0 K
( w7 x6 j6 Z/ R( ]4 D0 h, F+ A5 b ActionGroupDemo(Zone aZone) {
" T v) C0 r' l$ Q( A$ Z$ ~* } super(aZone);
) Y5 s3 O, N' V, W9 _ c list = new ListImpl(aZone);$ p, k1 W. ?# `# i$ ]6 ~) X0 s7 j
swarmSetp();
) k, m3 F- y! d, z6 A actionGroup = new ActionGroupImpl(aZone);
$ U# A: c. ?, c1 y; y+ [* i schedule = new ScheduleImpl(aZone);" ?( n3 {( |8 \. f+ L: G' p* }
try {
3 h7 u% b8 l- N0 J/ |3 i$ ? Selector agentSel = new Selector(Agent.class, "agentStep", false);- C- }0 _9 d/ M. [& K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: K& K: }5 W2 _7 v% j* A
% c# c: F' x* ^- g/ Q/ `3 k: z actionGroup.createActionForEach$message(list, agentSel);+ A0 O# R6 o2 H: o8 Q% g+ P1 @
actionGroup.createActionTo$message(this, swarmSel);& Z0 W: O) B0 V; W
schedule.at$createAction(0, actionGroup);
& d/ _+ V& C* R4 b' H schedule.at$createAction(1, actionGroup);& U2 _& F( J! u4 p8 Q7 c9 t
schedule.at$createAction(2, actionGroup);( x/ c8 m% A+ `
+ S6 @# d9 U. h3 q3 t( H) W; [
} catch (Exception e) {
N3 |( d. P d. X e.printStackTrace(System.err);3 u. |4 \1 W, O
//System.out.println(e);1 c: J" f( Y) r
System.exit(1);
# g) _% X; Y- q4 H5 H" B }8 I$ U. D, E; Q2 {) {
7 g+ S( Q5 u2 ?1 r K
3 C% V& Y$ |# Q9 u1 g' k
}7 h% ]0 S4 |$ n3 j% U
2 q0 j4 L0 Q* n private void swarmSetp() {
# c; R7 T: [$ `; z9 N( N( n# R list.addLast(new Agent(Id));
; Z- Q* ]+ a6 F' g# c/ t4 | Id++; N5 R% @2 ]4 J
}
* [7 C [% C- O, A' G$ K( ^ N! ~7 S# t8 ?6 s% k
public Activity activateIn(Swarm context) {4 s' B$ {- L5 J
super.activateIn(context);
8 z4 ]; ?) s/ Y z$ b schedule.activateIn(this);2 o$ `. C3 R3 m: v8 l- k
return getActivity();
9 p5 ?2 w* r1 v; q; _5 N }
6 ?# |. p, A* d( T3 @$ \* f* X: X& p
public static void main(String[] args) {$ R# F0 B" Q1 u. P+ H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" l7 b' z) L0 E, s$ k5 n% N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ W7 t* b& T) _3 V. v
swarms.buildObjects();' V/ \- {$ `- w3 ~3 x
swarms.buildActions();; A' b: Z9 z$ L; f& G+ d4 j
swarms.activateIn(null).run();
8 k4 @4 `0 u0 Z8 H8 O5 A }
- V9 u+ C# P- Y8 }$ h
9 z1 ]1 y* E& A} |
|