|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ E4 m+ u0 p. G. P& v' y' t E7 p1 F- j
# Y' F7 u6 z) B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 c, S& p6 V9 z: ?# w+ S1 [5 V5 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 h* o8 e/ V- a3 a# v8 ]5 }9 I+ h
swarm.SignatureNotFoundException
. B0 k0 v S& X, b# z at swarm.Selector.<init>(Selector.java:76)% M) M9 k& Q6 C9 p2 D7 J$ }! @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% Z) {0 i9 O% s4 n at ActionGroupDemo.main(ActionGroupDemo.java:67)% |1 K- _3 M! u9 {2 @
6 O0 V* E7 I7 v6 s
+ s. G' w# K; H/ n1 Z
import swarm.objectbase.SwarmImpl;
0 U, }1 h3 i, ~8 I3 S# T' [: W6 Vimport swarm.objectbase.Swarm;
. V$ t: ^$ t& t/ V7 J2 O* U, yimport swarm.activity.ScheduleImpl;
K1 g; a$ J" kimport swarm.activity.Activity;
$ q) s- A! G2 |import swarm.activity.ActionGroupImpl;- r l8 O1 E* S* R' @0 F5 B
import swarm.collections.ListImpl;# T! v, i. U+ p# ?5 T
import swarm.defobj.Zone;
! g2 q8 Q4 c9 ximport swarm.Globals;' P+ W! W- I" _4 F! U4 c6 J
import swarm.Selector;
$ r( H4 ]) r C& X7 U7 kimport swarm.activity.ActionGroup; # t0 T; n* p: }$ k: m4 }7 j
class Agent {7 N9 [0 O& C5 O, L( W4 f, C
char id;
0 ?& W) x. u' T7 g- K0 E( I2 J; c% f7 l" F6 j( d
Agent(char id) {8 q) J0 r) H) d) V( `
this.id = id;
7 z% J# b9 B \3 a; W5 T }
4 F+ F/ E9 P4 ^8 \, J4 _% t/ _
6 l; S- q7 K: J* M public void agentStep() {5 ^' g" p# [ F5 g% I
System.out.println(id + ":" + Globals.env.getCurrentTime());
H$ {2 O/ H8 X0 h. d% i }! g3 \4 w6 b" R3 l8 L: E7 W
}4 E3 t6 ]: j, l( H& V
3 U9 ^1 |: Y% Q- `. X6 V- Q
public class ActionGroupDemo extends SwarmImpl {, t1 k0 {0 r; D7 y
ScheduleImpl schedule;( F8 e+ T) H3 V4 W( J! \) p# S3 h
ActionGroupImpl actionGroup;
* @- l9 d6 G+ ~: I( g ListImpl list;% w& i0 M& }% \6 }4 S; F
char Id = 'a';
0 o/ Y" H3 H' {. b4 D- | q; }, Q; u6 l/ t7 h j9 M
ActionGroupDemo(Zone aZone) {
7 P# N1 I+ J- V* S) C super(aZone);
1 g9 ^0 }1 B1 t list = new ListImpl(aZone);4 `5 R9 ~! y8 @5 V/ h1 a1 d; q! s0 d
swarmSetp();- |; v$ ] o+ C! f. E- M
actionGroup = new ActionGroupImpl(aZone);
* U$ w$ _- R# |3 d* R4 @9 D schedule = new ScheduleImpl(aZone);
6 R3 P8 y3 P& u c9 f try {
) o5 @6 A; ^. i6 Q% G; _) G Selector agentSel = new Selector(Agent.class, "agentStep", false);
: e$ M6 `8 `5 A5 Z: c6 X Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- _* K. Q* z3 T! t& I, j' j1 X
( O+ _ T% M4 y, y: _2 Z
actionGroup.createActionForEach$message(list, agentSel);
3 @6 K8 R5 Q% f) ?4 W1 C actionGroup.createActionTo$message(this, swarmSel);
+ p1 Y1 h, @/ n0 I% Z0 L schedule.at$createAction(0, actionGroup); ?1 t/ A+ A t# \3 ^5 W7 E1 v
schedule.at$createAction(1, actionGroup);
" d" p C( _8 X3 K1 f schedule.at$createAction(2, actionGroup);8 ?9 H4 L7 d5 r p3 {) Q* R; Y
5 b9 D3 u: I, u } catch (Exception e) {
! K, ]) ^. n3 l4 ^ e.printStackTrace(System.err);3 g' e& R0 F% N$ N% M
//System.out.println(e);
. y. T# b+ q1 N! ?0 k0 U( U: B. ] System.exit(1);
: d8 O7 B; ?: b ] }
' O2 J) t2 K1 h+ V6 T' l1 s6 b. V* S3 u
. ^4 c; b" U# Q' y3 K, [& e# \ }7 R* M% j9 j8 W* W; @
6 e6 m: P8 L/ F$ x/ }. ]: w- V private void swarmSetp() {; s) ^# G9 h. Y- s
list.addLast(new Agent(Id));- L+ d7 [) X" K: f( D. w
Id++;. {* e& d. Z! ^1 p
}
: V. l6 f4 P' o0 t& I; m5 k: M/ S0 V3 ?. v: l, j( X r0 ?6 b' b0 x# @
public Activity activateIn(Swarm context) {+ H2 [; z0 m: F o* { ~
super.activateIn(context);
2 ?: X0 [; \! _; U& f) O1 X schedule.activateIn(this);
* ~; w; ^7 |# i" `, a8 ?8 f% B return getActivity();
: L6 U6 A! a. W2 Z& Y0 G0 d0 L5 G7 F( M }
2 l" y( Z; ^1 d: l u- f
: R8 f6 N0 |: S& O- J* m( s* f public static void main(String[] args) {1 E6 L, u; \; F
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) }3 x# [ T/ O" L0 _* x3 u2 e8 g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, c0 ]3 o/ G- v
swarms.buildObjects();5 ?- R- ]; b/ x6 R( J8 h! @- q2 |
swarms.buildActions();
( t' w- f5 `, b swarms.activateIn(null).run();+ S* ^9 I4 m4 p o
}
) y C$ C. y0 V- D1 |! \0 G+ b6 P% }4 h8 [) w3 C! Z2 P# @4 Z, a4 c
} |
|