|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; J* q- B" ~! ~! F
- t5 g' f1 H* E8 l8 r: u# E( y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: t) S# b2 c. ~2 v7 O1 y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% u3 h) V* [0 m. ?6 K( L' t, Kswarm.SignatureNotFoundException
; `, Y1 B# B8 w8 Q0 Z1 T at swarm.Selector.<init>(Selector.java:76)' f- r8 }5 n J, O* O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 U; c# M: F. I& S" g
at ActionGroupDemo.main(ActionGroupDemo.java:67)9 U5 w& ~" f$ Z7 K
* O7 V& F. X6 _3 V) _; x
# S* A9 H' w# @% T; ~, }/ [import swarm.objectbase.SwarmImpl;2 W8 d5 ]2 q/ G, ~$ K
import swarm.objectbase.Swarm;! }' Q! @1 Q9 l- _% e Z G. z
import swarm.activity.ScheduleImpl;7 b% i* U8 N9 C% P2 q0 f
import swarm.activity.Activity;
@. z- ?. Y% B; J9 }. k0 \9 wimport swarm.activity.ActionGroupImpl;, P9 H' x1 e5 ^, J
import swarm.collections.ListImpl;1 o$ K6 `# ^6 x9 r/ V& f7 u
import swarm.defobj.Zone; ' G0 w3 G2 b& U" G$ Y. Z c
import swarm.Globals;
6 C/ o' W, j1 |) V: himport swarm.Selector;
& Y1 G( A4 b- j8 _2 F2 l! Qimport swarm.activity.ActionGroup; 4 M5 c* F$ r b g* A! s
class Agent {
" R* T, R0 i2 F4 | char id;! _/ q# S1 }: l- y" y3 j/ X
, U' x5 |4 A b; o9 k5 q, w; [
Agent(char id) { B8 H. ]. F0 r/ c5 f% S
this.id = id;
) C- o5 t, `: w, K }8 D, i* [% n7 Q) C# s {+ j: z
) j: I9 m% ^$ n5 w5 @5 _ public void agentStep() {8 W' F2 u: t3 |: I5 y
System.out.println(id + ":" + Globals.env.getCurrentTime());
. A* Y( ~; |' u3 i. }$ a }
$ i# k; [& @. S}( y" X$ b# D# A3 t+ z7 a( c
/ j3 y/ g( {$ y% e+ Vpublic class ActionGroupDemo extends SwarmImpl {
( I e. T+ `. F# D! x1 B! H, c ScheduleImpl schedule;
$ P- e8 p% G+ f4 q O+ r! A ActionGroupImpl actionGroup;# y/ O$ j$ N( l, E! I
ListImpl list;
# q$ M5 c: p# v( t1 W char Id = 'a';
+ z" C X% |' u8 a1 b: _/ I- E z' l# ^9 o( V
ActionGroupDemo(Zone aZone) {1 d, a* }& K; g" s9 n' V
super(aZone);7 E6 }/ ~* x+ C2 u/ k
list = new ListImpl(aZone);
/ j4 q7 J; F7 l swarmSetp();
1 N3 n% Y3 y7 p y; S% t1 ~7 b2 X actionGroup = new ActionGroupImpl(aZone);8 D6 h7 e. P4 z' |! z8 x
schedule = new ScheduleImpl(aZone);
. ~2 `/ T, L1 L: T' o4 { try {
5 T r& f) q6 u6 ~3 ^; Y Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 I1 u) c. ?; {. v Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# N1 [+ S; \2 s( k H9 Y
0 N8 [$ Y5 Q: E4 n. U8 |4 M0 O& c
actionGroup.createActionForEach$message(list, agentSel);
" t8 c: S# w. @% ^. w( B, u, _, ? actionGroup.createActionTo$message(this, swarmSel);
5 a5 h% Z5 u6 N/ q x schedule.at$createAction(0, actionGroup);, Q- j8 i( h% H9 _# w7 l
schedule.at$createAction(1, actionGroup);
8 i' D& O, X! F- y8 H& i l9 ] schedule.at$createAction(2, actionGroup);, U: T" T( F+ f- r0 U
/ V4 T6 M! \- n
} catch (Exception e) {/ n2 _1 F I0 z; N# x1 |
e.printStackTrace(System.err);$ x3 D5 j# n2 [2 {# c
//System.out.println(e);3 @8 Y$ U; W/ @
System.exit(1);
4 t4 a B% [) K4 f }
4 W0 _9 s# Y. O5 z' G V
- O1 q. J8 f& l- u" h4 S k; H5 e* `
7 E4 @% X/ H" `8 x2 r. |+ M& r }
/ p. z. j5 r1 x( K4 G9 P% B0 c3 [& E) _( N
private void swarmSetp() {
1 t. V! I& x+ T list.addLast(new Agent(Id));
9 I5 |# R7 T+ g6 Z5 C9 H" |, q Id++;
# B- C6 a3 L) E }' ~1 _/ f( D+ W" a, V( k$ @ ^
0 B. _& S1 M/ M# J: V7 ]4 h: x2 P3 @
public Activity activateIn(Swarm context) {
4 W6 I2 q# H/ h& X% m9 _. |' { super.activateIn(context);
! }$ j2 P5 B$ ^9 F9 u% [ schedule.activateIn(this);0 c$ I9 ~# w4 L% B+ s: h
return getActivity();9 ~8 V+ ?, w% y$ x+ H
}
3 [/ R3 Q) N: z. A9 ]$ y% H
: P. D3 j) R. P6 G b public static void main(String[] args) {% G, L8 \0 ]8 M0 F- ^3 v
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! o! S8 n* |! a6 e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; X7 s/ a5 @$ _
swarms.buildObjects();! ]/ D" \: s# v7 x9 `; ?' \
swarms.buildActions();
5 R% C- {5 Q7 z swarms.activateIn(null).run();5 |! B& H. u. m% w' t/ `1 l
}$ n9 [$ [/ o+ F8 I9 Y
9 C: c8 S# M8 I6 b. O# @) t} |
|