|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ R+ O+ A5 c- A9 x! e6 ~
$ [" E7 ]' b. u/ b6 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. @. P+ N0 `" y5 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 m e( L( r( _
swarm.SignatureNotFoundException
9 ~" y# ]7 z* R' y* N% k at swarm.Selector.<init>(Selector.java:76); A Y7 ?! \ ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# P5 m* e6 D4 h4 k at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 V ~ u' L6 A) K$ F7 A- m# V# A i
1 W7 Q# r% ?9 n9 {/ m" ~" l- ^0 qimport swarm.objectbase.SwarmImpl;
& L# p! K+ ]8 |4 m; s# kimport swarm.objectbase.Swarm;+ V& q6 _+ |4 Z: g( C3 r' G2 y+ y5 U/ f
import swarm.activity.ScheduleImpl;
. c# p; O2 g% f' r; P' {7 gimport swarm.activity.Activity;9 q+ {3 y ]2 v, \
import swarm.activity.ActionGroupImpl;8 l1 q; N5 n5 v' ?8 l
import swarm.collections.ListImpl;
8 S/ f+ m$ T* W( Ximport swarm.defobj.Zone; 1 s9 p2 x& F1 N' w" k
import swarm.Globals;; E8 D4 Y, `6 Q2 G$ L% I
import swarm.Selector;
# `2 n0 X! n$ Y( Z' o$ ]import swarm.activity.ActionGroup; : V% a) H& c) M. K1 x
class Agent {
' A/ o3 K9 T; S) u: I, R) D2 v7 ^2 m char id;2 e0 R/ D Z5 y# }% o+ k2 B4 C
2 q) X0 N @* t9 }+ k
Agent(char id) {" l, p7 A v7 b6 ?' ~' x
this.id = id;' `' r6 c6 G' K" z8 K# u* l, N
}+ g w3 l( R' @7 U% e
& f" _3 ~! l# F public void agentStep() {
/ |2 A% P7 D0 B" }' n9 ]( T System.out.println(id + ":" + Globals.env.getCurrentTime());, K& p' E0 j) L) _5 s a
}4 @" z* {8 }7 f. a$ m
}2 E8 P$ I' c. \$ C# B8 s- s
% n: J% m" Y* ~6 v$ vpublic class ActionGroupDemo extends SwarmImpl {
3 G3 {5 ~. o0 ?/ v0 I ScheduleImpl schedule;
$ u, c9 S2 B. H! X3 A ActionGroupImpl actionGroup;6 K1 M" O8 k* Q& k# x/ B' m2 E; t: D% H
ListImpl list;2 C% O7 `6 E& e+ c4 }4 s- U8 H
char Id = 'a';; d4 r: A: i7 F, f5 M C* C2 f( P
! e8 T( K2 }; r1 Q, r
ActionGroupDemo(Zone aZone) {) V0 A) C: `5 O5 X7 F
super(aZone);) m0 w$ ^. ?" q9 c
list = new ListImpl(aZone);
$ q" c* `* D) d( U swarmSetp();
7 Q, A. d! ?: f7 Y. K1 X$ N actionGroup = new ActionGroupImpl(aZone);
6 }7 c. [4 y- u3 R schedule = new ScheduleImpl(aZone);
: N* C& s- ]) a try {% r1 ?/ G- ]1 S3 A8 f# a
Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 H, g7 k4 Y1 V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! V; b: D" Q L/ c+ O: u# @
9 ^5 z4 N0 Y: z8 F actionGroup.createActionForEach$message(list, agentSel);
2 N6 Q' P+ N: P6 r- `( r actionGroup.createActionTo$message(this, swarmSel);6 B2 y c" z0 @/ R* R
schedule.at$createAction(0, actionGroup);3 k$ t y1 r6 W# N
schedule.at$createAction(1, actionGroup);( \" o8 f2 |9 h p. X# W; W
schedule.at$createAction(2, actionGroup);
1 M) T- x5 c* W* c) ~; C
1 B" Z) C$ X) T } catch (Exception e) {
6 D4 r2 `- N) M- S; `8 ~; S e.printStackTrace(System.err);
% c. f/ n1 V) h7 U; J+ a //System.out.println(e);
( [( O' r9 w$ {, e9 [' h1 }5 |7 p System.exit(1);4 V3 W, j9 U. Y9 |$ U" V
}
' \# `+ v* l( v- P0 T4 a1 |, c) d/ y& R- Y% b! {
0 X, U# V7 d& d. ^" ]8 Z& M }
4 K* Y; d9 X. K0 h' j% z3 o( E4 W. o- ^% L: l4 M) m
private void swarmSetp() {
3 E& o7 Q& F) f$ c4 J list.addLast(new Agent(Id));% o$ B) V' c0 m# a- | C, @5 A% M
Id++;* k& m; d+ Q h) T1 Y9 v; q
}; R. n/ N; C6 A) z
# F! x4 x0 }7 Z/ }: D5 l; s public Activity activateIn(Swarm context) {
: j' r" H& F8 f9 N$ G5 { super.activateIn(context);: Q V0 H+ ]! Q4 a! P
schedule.activateIn(this);! s+ v; j4 A8 s+ G
return getActivity();
5 Q0 k" R n0 o }
5 [4 D2 m( y" g6 \: j" T, E& ~0 G/ T( Y6 b# j" K
public static void main(String[] args) {" k0 F% B/ @% U% @: _/ l9 b' Q2 {9 ?- q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 {$ U5 S1 N B% i* h$ f, x' m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- R+ C( c8 ]5 l) Y9 j: D9 K+ I$ H
swarms.buildObjects();
O* [8 l8 \9 m5 Z3 D5 P swarms.buildActions();6 V9 d5 A( W/ b3 R
swarms.activateIn(null).run();
. k) g/ G* S3 j4 R& y2 f }5 D- E. J) l# c/ [8 i
$ [2 L0 @/ Z5 e9 e! T0 u
} |
|