|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 K' U8 O2 u7 i9 y. V2 O+ p/ U/ h! b2 n5 P( A$ n' i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ }/ p: D* ~1 j% V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# P* l' ]0 g1 a+ s! c+ x
swarm.SignatureNotFoundException
# V9 d2 ?# U5 ^$ I' u( G at swarm.Selector.<init>(Selector.java:76)
1 O6 A f6 L6 G# s# f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. d# d5 u- ~+ ]3 A% J9 A at ActionGroupDemo.main(ActionGroupDemo.java:67)- A6 J, w) x. }4 _/ m1 ]
- v6 {4 Z2 g1 u7 y4 q9 W
# E8 W. b. h% F& r5 d/ f
import swarm.objectbase.SwarmImpl;8 j2 ?# n4 R: p" w
import swarm.objectbase.Swarm;
4 ~& K9 Z* n+ f# c% f% @import swarm.activity.ScheduleImpl;" E3 z! r( {6 z; {. g& q# W
import swarm.activity.Activity;2 p$ x/ ^7 R2 c- M0 Q; X+ u( e6 _
import swarm.activity.ActionGroupImpl;2 _% B2 W+ e. P) V/ \
import swarm.collections.ListImpl;
+ J+ O, Q6 a5 g) K3 ?5 ?import swarm.defobj.Zone;
! A& r$ s9 a# timport swarm.Globals;
) a8 D6 Z- r! _9 ^import swarm.Selector;4 {$ P i% a0 A8 [/ Y
import swarm.activity.ActionGroup;
; V' ?/ l# e+ H! }# D& g) Yclass Agent {) t4 i/ z% p$ V2 z i% y
char id;
: s- z2 @0 Q7 a& N; z# n/ m; l% L& L: t+ i
Agent(char id) {- g( Q9 [6 ]2 q4 q% {. f4 O
this.id = id;
- o9 W D# M' Z, R9 E [2 `( z }+ j. i" U% Z& l6 L
7 f: D: C0 v. }& x S3 Z2 d7 @
public void agentStep() {
* t! \$ B* R2 O5 [" E System.out.println(id + ":" + Globals.env.getCurrentTime());
0 e$ h& {9 ~ N3 K8 U }
; S# m! s- w, g- D& c( P4 r}
- H4 C/ _6 D6 u: C$ J2 ^* P
; P9 O U% D% y4 j; wpublic class ActionGroupDemo extends SwarmImpl {
4 i/ N. D. |3 p7 M; d+ @' W ScheduleImpl schedule; [9 K: G# m1 d, T; i; \8 l
ActionGroupImpl actionGroup;
7 w% ^' L# l/ r; x% p# a# y8 e ListImpl list;' L0 T. Q2 K: q" d6 S. Z7 h
char Id = 'a';
' Z) N# K! G. V; U; O5 [6 j9 j8 r: x1 J5 x
ActionGroupDemo(Zone aZone) {
0 T$ z, D; L. W$ S super(aZone);* y, e1 d' u8 i I
list = new ListImpl(aZone);
+ ^$ ^$ q% `6 [* X swarmSetp();
+ m. g- |6 V8 x7 } actionGroup = new ActionGroupImpl(aZone);8 a9 E& [' m0 t& k1 m- ~, B
schedule = new ScheduleImpl(aZone);" [+ Z8 n4 W* l# N* o W) y9 L0 `
try {8 n" K) J3 j, {8 N' m! C" i/ E
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* S0 Z w8 r ?' b Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! ~5 }# D8 k& p. ~/ j, `$ s
) ~5 ~2 B# A9 X1 z. d
actionGroup.createActionForEach$message(list, agentSel);
, }/ Y# v% i8 L* E actionGroup.createActionTo$message(this, swarmSel);/ F" w5 C6 Z+ y" U3 L4 A
schedule.at$createAction(0, actionGroup);1 W' W1 e9 U6 N. T( i, e
schedule.at$createAction(1, actionGroup);
P, n3 y4 u! { schedule.at$createAction(2, actionGroup);
j+ S9 Q- E) m4 R& |* T' }' P
- z# G! ]/ M, m9 _. {9 B) @2 _' W5 v } catch (Exception e) {& ] s. H G* B2 e; ]& ^: @
e.printStackTrace(System.err);
( c' o; u! b2 y0 X* ] //System.out.println(e);2 T1 ~& U8 A2 M H6 j' o
System.exit(1);, x% j/ N' Z* u" c
}+ S) g1 z7 B: p. X. ?1 R
$ c0 ^6 q; @; R. U. ]' N. X/ {
) J; V2 o) M; H& m! {5 D. q }0 U/ [2 b. r; l/ V2 D0 z
) j# Q! M; U* F O5 o private void swarmSetp() {
/ G7 Z% m# \ h' P/ C& g list.addLast(new Agent(Id));
: F& o2 f" ^4 m$ g Id++;+ v4 W% L7 X) ?9 N! }4 h$ Q4 K
}! S) I! H" {# ?
0 r E: f3 N4 D( I3 v: q Q
public Activity activateIn(Swarm context) {
% ~8 q' G9 n; y% t% c! C super.activateIn(context);
; h0 y, q {3 S* V. m3 ~ schedule.activateIn(this);
% M: N) |8 I% v. |8 p3 @ return getActivity();
* I" A; G9 L6 S2 x/ ?: G }8 |/ J2 r& D- [! `
. k/ L0 o4 W+ D. Z
public static void main(String[] args) {0 Z! l: Y+ a( @; c$ z$ \6 q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# [3 S" ~0 s- }* [6 b$ k1 L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 P: `' @2 [+ W" r
swarms.buildObjects();" d& i& b( k, O* Q* D% G' P
swarms.buildActions();5 L( D: M. x; L0 q+ N! n
swarms.activateIn(null).run(); \! Y+ ?+ H4 x# Z* h
}: V9 V1 K9 q! o
$ R/ t; i" h1 C+ p1 {/ @} |
|