|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 h/ ~ S A/ G2 Y& W! o8 a
4 p" b. J+ M2 h; S9 @1 x0 { v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 H/ v- M M' o* a, f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. M7 d( k8 L7 j! v3 L- O! R9 l9 l
swarm.SignatureNotFoundException
" M. k7 D/ M+ q: t7 D, e% P* b A at swarm.Selector.<init>(Selector.java:76)1 p( M9 K# v' |0 f
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% }% |- E0 Q1 h! W/ Q0 \
at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 S1 O' E1 b* H# X
2 d6 x+ \- _& k- i% S& E7 v5 m& a5 ^( E" K
import swarm.objectbase.SwarmImpl;; t$ u' I8 q2 Q8 ]3 D
import swarm.objectbase.Swarm;
- s5 T/ a6 v. D: Wimport swarm.activity.ScheduleImpl;
" U! r$ N# U! _5 j) K& K1 o+ pimport swarm.activity.Activity;0 ~2 r9 K0 z" T5 s; F
import swarm.activity.ActionGroupImpl;+ J1 R: _$ }) f% m1 Q
import swarm.collections.ListImpl;
6 S: @: {+ f8 Ximport swarm.defobj.Zone; ! N& m3 P' W3 t9 S+ C9 _! X! t
import swarm.Globals;4 E' @- D, X9 b9 S# {$ x8 Q$ a
import swarm.Selector;! G2 A, e E1 F$ W' w# Y
import swarm.activity.ActionGroup; , X$ T6 Q+ O2 d5 D! T
class Agent {4 G% b) R0 Y R8 t
char id;6 s* }/ Y! Z( Z& }5 g# ?
! S7 l* |4 _3 b- v* b$ G Agent(char id) {) w7 d, H7 r/ e8 V) Y1 Y l5 E% @. l
this.id = id;/ [& o1 t8 R) D- Z' R$ ]* J! k
}8 a) }5 C( ]' d) z! a( S. M5 j
_' ~( b2 t9 g8 r4 U! H* b2 x
public void agentStep() {
9 R' \8 l! l6 w$ ` System.out.println(id + ":" + Globals.env.getCurrentTime());
0 O1 ?! N, J9 u) Q3 Z' ~. Z }& J2 I( L% v7 A; Z$ m* J
}) Z# I' Y& n* e) K9 E
+ w" _0 H; O* R; d# m& Z5 hpublic class ActionGroupDemo extends SwarmImpl {4 N" @2 w6 R9 \5 E3 f; q
ScheduleImpl schedule;
0 M% @$ \8 ~2 B5 O2 P$ Y ActionGroupImpl actionGroup;
& N, s* X0 L" A8 b2 h4 O ListImpl list;
7 @3 g8 f' n2 D) m' O$ ^ char Id = 'a';
9 n+ W$ k7 Y8 ^9 f+ ~2 V7 Z7 r1 N* K' i
ActionGroupDemo(Zone aZone) {3 u! [3 V+ n0 Q7 j: D& M& {* }
super(aZone);: H& H: t* y6 s/ A
list = new ListImpl(aZone);; u+ P: X9 a; i: A' Q
swarmSetp();$ S+ i: S! I$ G
actionGroup = new ActionGroupImpl(aZone);8 a0 `) R# X0 O9 g& m, _
schedule = new ScheduleImpl(aZone);
% y- j4 \$ @6 ` \2 Q# x try {
" |; E. G( v5 N k6 E h Selector agentSel = new Selector(Agent.class, "agentStep", false);
. P; ?8 ~8 H* U l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" K O k" b* g1 F3 \
O0 n& M3 j% F
actionGroup.createActionForEach$message(list, agentSel);( T. c+ s9 L+ C, o0 E
actionGroup.createActionTo$message(this, swarmSel);
! G0 }7 F& h8 m0 m' S0 o schedule.at$createAction(0, actionGroup);+ I* C7 m6 c o5 u. n
schedule.at$createAction(1, actionGroup);" q0 y, m N2 j+ \6 y
schedule.at$createAction(2, actionGroup);: [+ c7 {4 O8 F* ^% N
) k9 I. ]: T6 j$ Q }8 m9 c2 H
} catch (Exception e) {/ o# A) ^4 D( P* ]3 d, K
e.printStackTrace(System.err);
* f! u2 s- j' \6 w //System.out.println(e);' U, b7 b* f0 H$ ?
System.exit(1);
5 A7 S$ G# c5 x/ M }0 a+ u7 g6 w2 \$ c
2 L2 l+ t7 z1 Y; G2 N& q+ K0 ]& l$ r# \8 b( {( n
}
* p; @- y$ Z& x' Y- O, w- o" Z( _9 E; }% _6 k. R( H. ~- ~. t1 q
private void swarmSetp() {( D2 m9 t, b) w
list.addLast(new Agent(Id));
r# O5 F, _/ x, @1 r/ O% w2 w2 w Id++;
1 Z2 E( Q# a4 t. Y+ r }$ u; @7 o9 |! F$ j# ]- I; J
9 ~ c% R" U% z, V- r/ T public Activity activateIn(Swarm context) {
$ T) }8 a) e" v- `$ S super.activateIn(context);
" ]4 D3 N2 e# G- y* [ schedule.activateIn(this);
D' s: t3 d! T return getActivity();
8 M# x' F1 H3 s9 [, L }
8 Y5 m J6 ^9 O! f @5 j7 O6 w# p3 D0 T B- g# W
public static void main(String[] args) {
! O8 E6 D" k9 c Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ R+ A3 ~) r$ u1 @ J: ^3 f) r1 H0 n
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: k- z3 r4 [9 F) ?5 y( V8 H swarms.buildObjects();
& B6 P# K V& c; z swarms.buildActions(); e; c: O8 [) i. A, p
swarms.activateIn(null).run();$ A c1 j# w7 ~& O- E) Z3 _
}7 H# ], l% l* d t0 f/ n$ L- x$ }
* S' R- T$ [- ]/ a( ?} |
|