|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 Y6 \: O; B7 \8 f1 t- ^! a
3 \- U; R! r- g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 n. ]! Z- {- ?! ]5 Y: G7 K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 w. e- x0 O' G2 b( `swarm.SignatureNotFoundException
_5 c9 [ D P' C. c at swarm.Selector.<init>(Selector.java:76) c. W) c% _/ f! C; u$ z- {8 E8 [' z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% k; Z# ~- V: l$ o at ActionGroupDemo.main(ActionGroupDemo.java:67)9 T) v- M7 V) U( a" g
, s. N/ M; F5 p f! K
) ?2 j4 U6 ]: a2 ]3 H3 Timport swarm.objectbase.SwarmImpl;9 x. [/ |( W2 w) k
import swarm.objectbase.Swarm;
/ `3 i3 c$ F7 z6 Y' Rimport swarm.activity.ScheduleImpl;
- K# [/ v4 P6 L9 ~& d S3 iimport swarm.activity.Activity;0 T2 \7 I2 |+ ?
import swarm.activity.ActionGroupImpl;
: L& h a1 U1 o% K# M, z7 @import swarm.collections.ListImpl; e, L( H4 R/ K" g
import swarm.defobj.Zone; # }$ s2 x: M) k: w! n$ E/ u' V8 r
import swarm.Globals;
3 t4 k3 J3 N: N6 Z1 iimport swarm.Selector;! P% s; j+ \' R7 w2 [1 t. G
import swarm.activity.ActionGroup; 6 c% g* e6 ]# d1 P* t! N
class Agent {, ^- i7 G: C/ ^& l" H& n4 _
char id;
# D, Y+ w1 M% ~" e5 R; C
1 ]( \/ J1 B0 B; d1 m/ x. i! Z7 @ Agent(char id) {
: [, v2 S4 e& K2 ? c( G this.id = id;
; |8 v7 i3 s/ Q& [3 X) m }
2 O/ L# Q+ ~9 S+ O; V' \' K& E d% m5 H! ?* f* ?: v* k3 @
public void agentStep() {
# `1 b7 V8 u v) e7 O% l; H7 B; P System.out.println(id + ":" + Globals.env.getCurrentTime());
& G; ^/ z& D; e: ^- r2 g* d }
& u% o4 B5 q( N X}
2 I j& ~8 u$ n6 m( j# d1 _. Y4 R1 y* W6 P
public class ActionGroupDemo extends SwarmImpl {
" K& Z! ^2 @' Y. N6 R# [. J: Y ScheduleImpl schedule;
3 Z/ ]0 p- y" `4 W( { ActionGroupImpl actionGroup;7 E* x7 d; w" w5 j8 H2 \
ListImpl list;! }3 i2 j" d/ g* f$ W+ J
char Id = 'a';& |1 Q6 v9 y7 c4 k
: n! J" a6 v* z! |0 `% x/ j4 _
ActionGroupDemo(Zone aZone) {7 }5 T, q, c8 w
super(aZone);
# ~0 c4 d, \ `9 x: B- T# J( Q list = new ListImpl(aZone);% |( Y- u+ ?/ i
swarmSetp(); {" ~' _, G% r" B1 Z2 E9 |
actionGroup = new ActionGroupImpl(aZone);
" ^, i8 f- s! h+ d4 C: Q/ r schedule = new ScheduleImpl(aZone);
8 l- |6 F6 H) h, b* p0 V try {
1 M8 G* C" C; B6 W/ b Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 E( N6 b) ?1 S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- E- t3 n2 s, g! k# `' E3 Q, N
) C& r. L; F; h& A actionGroup.createActionForEach$message(list, agentSel);
3 Y0 A) R2 s( s7 b3 h actionGroup.createActionTo$message(this, swarmSel);
' C @& K; }5 f9 E7 K g! N- D, ~ schedule.at$createAction(0, actionGroup);3 h2 e8 p& ^: E0 D9 n; t" ]9 W5 |1 K
schedule.at$createAction(1, actionGroup);+ V8 F" d/ j5 p# f
schedule.at$createAction(2, actionGroup);1 p; v% U- i ?9 X7 ~& N
5 _1 @! V7 H0 \( Y9 w } catch (Exception e) {* c3 O0 `& [& H: k& O
e.printStackTrace(System.err);7 C5 Z* Y) p7 I. {! ?
//System.out.println(e);! [% ^, m' x& ]: _/ A+ Y; U, C% ]( Y- d
System.exit(1);
- J9 n4 B2 s1 J. B' v } W ^, u. l2 x8 x T. S/ d5 q% u
2 F* H [% D; f+ W1 u+ w9 ^4 q- x' k. }* k3 N+ w$ s4 L
}9 ~# v0 f0 I0 [- [
3 C! k! G h7 r
private void swarmSetp() {! g8 l3 r0 W' ^. X
list.addLast(new Agent(Id));
% }2 N+ ]1 m0 [8 b7 a0 D Id++;" m# v5 |6 X) M" Q
}
/ f( h; ^0 F5 z6 U: u! Q Q8 X/ E" R7 \! R n7 I
public Activity activateIn(Swarm context) {8 D6 X5 G% ~2 O& G/ x
super.activateIn(context);
* B; {- t0 n- t9 ~7 O8 A, Z7 w, F schedule.activateIn(this);/ A/ \# [ \0 _% F ~
return getActivity();8 l) s2 B0 S$ @. H
}
3 T- o# o0 `+ J. L
2 A! x! N5 W" Z public static void main(String[] args) {4 d! m. N0 |& ]9 O- h; |8 n
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 I4 w4 f+ V2 M1 N
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( h; @$ t. h8 l6 t
swarms.buildObjects();2 `: w3 d9 y4 ]: x1 E Y
swarms.buildActions();
: r0 a. {9 \. D. G- r swarms.activateIn(null).run();
, q* |) d }/ u/ @/ o7 O }
4 Z# ^$ W/ A: R. R0 f Z! Y6 {. q
} |
|