|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ D% O7 M5 s6 T% p
2 j+ v, V9 `3 t1 ^8 J4 `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 o, G1 z; A! |7 S% y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, \$ x- P. S5 U: z/ A7 [swarm.SignatureNotFoundException% `- P( [4 M: N* T- \
at swarm.Selector.<init>(Selector.java:76). i& s+ n+ _* R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 k+ m* i' D+ R9 \2 F" @ at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ G3 A; ~9 o A* @; N# K7 ~( \" b
6 C9 R# @: [, u1 y" [% k- y
import swarm.objectbase.SwarmImpl;
0 Z4 }% ?- H2 I Z9 Dimport swarm.objectbase.Swarm;
7 J& U. N; ]' P9 Kimport swarm.activity.ScheduleImpl;
" n+ i0 s& G! B2 E- E+ @ N4 kimport swarm.activity.Activity;
( u2 g& G& Z- |9 }; W& i1 Mimport swarm.activity.ActionGroupImpl;. n/ R0 u$ ~- D: l7 h" t# [
import swarm.collections.ListImpl;8 v% s- p; e) L2 N# A; f
import swarm.defobj.Zone; % C* n; _3 |: z8 f
import swarm.Globals;& y5 y/ ?) {/ G+ e: ~$ w& T! m
import swarm.Selector;
* g6 U' u) C% c6 ^6 ~* J2 t' ]import swarm.activity.ActionGroup;
. I/ [/ p0 ^( ? m; c- O+ Jclass Agent {
' U# u9 N$ C: t( v x, r: p z char id;* T2 F) b9 }, u& q# X: r8 F R
! P4 K+ U8 O- U; \
Agent(char id) {
( h4 z2 [5 P& ~+ S' ` this.id = id;3 k1 C2 T' t: }( T" I
}4 [- p1 a0 Q- h3 w+ }
% _& {1 K1 s. X* E% o) f7 { public void agentStep() {& ^! v* c6 \9 B
System.out.println(id + ":" + Globals.env.getCurrentTime());1 K+ B5 A( w7 R: W" f
}
0 \% s$ n1 Y3 C2 r* D}
$ Z! E- W9 F2 u9 P) d7 Z0 c( R8 [
public class ActionGroupDemo extends SwarmImpl {/ {1 {1 Z( f1 V4 A
ScheduleImpl schedule;5 \5 I9 H6 |0 q
ActionGroupImpl actionGroup;
; M* b( q& Y& S8 b# a( ^+ b ListImpl list; n7 A& F' Z! A |8 Z9 g
char Id = 'a';2 z1 r) l- r, m% X! F( e
, l4 @+ V) l' @8 H! Y ActionGroupDemo(Zone aZone) {1 l& `- F! b1 f' N" Y1 o
super(aZone);2 L) i1 H. z; Q2 n& F: q: Z
list = new ListImpl(aZone);
8 {' O* t' y- x# n8 W) s swarmSetp();
& M, E3 z, ]$ L4 c actionGroup = new ActionGroupImpl(aZone);+ H) L: Y/ h7 A' N* \
schedule = new ScheduleImpl(aZone);5 J. G/ `6 c0 R
try {
4 y7 b. c6 s( A$ j( ~7 [ Selector agentSel = new Selector(Agent.class, "agentStep", false);+ p2 W( g/ g# f( }% T8 B' v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% t& T2 {3 U/ B
* j6 S a& ~6 W2 \6 T4 L1 O1 w actionGroup.createActionForEach$message(list, agentSel);/ \3 n8 n# g7 q9 T; k, ^
actionGroup.createActionTo$message(this, swarmSel);
" @% i# o6 | f, B6 k schedule.at$createAction(0, actionGroup);) u5 [. }3 X' }# m
schedule.at$createAction(1, actionGroup);
; f$ ]* d4 W; T% B7 r: C9 c schedule.at$createAction(2, actionGroup);! H2 Q- x) W3 S, m$ r { {, s
; Q$ ?/ X; f4 c% h' i, s
} catch (Exception e) {, p0 H* x- L/ @* C. |
e.printStackTrace(System.err);
1 S+ ]1 c1 a( `" K: c: ? //System.out.println(e);
+ Q: W7 F5 O* k# B. W System.exit(1);
9 b0 W3 q8 `( d) K( m' } }
. Q4 d4 [" v' a7 `# n/ i; e, S' i0 k8 |: U9 U2 k! ?3 G1 j' k
. F6 s) {( v& A0 b1 O9 g8 ^" S
}* Z9 W& s& a$ O1 }+ g1 J
9 |4 k- b. p6 m: B8 i private void swarmSetp() {6 V* t0 Z7 k) w u9 i% ^) c
list.addLast(new Agent(Id));
9 g! U; \$ ~9 [; V5 C I2 q% l z Id++;
% J3 s. j. ]0 z3 i }0 j$ ? [; j H# F
! H% B& [1 \- w6 [' C0 W+ r$ s
public Activity activateIn(Swarm context) {( l- ]) c" }0 L, V1 e) S j
super.activateIn(context);
0 x. \" k! S7 ?5 K: M6 e schedule.activateIn(this);
$ @0 z6 k, l* U2 } ^4 x% e return getActivity();
+ E6 m% Z; r Z8 s9 d, G+ B }: m" W4 y- n6 `. p% m. q5 j
( `0 x0 i! e( B f. b2 J
public static void main(String[] args) {% D' P9 B- e$ n
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% z7 ?7 d4 V4 |0 X7 _% n; {2 | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: ]" q$ J( ]. o# O$ z! Q9 s
swarms.buildObjects();
$ N; u+ ^. c/ h4 A swarms.buildActions();6 V/ `3 {+ X) w9 m2 u
swarms.activateIn(null).run();
6 Q+ g9 M( Z) M+ h }+ R, K1 n6 c, d1 K
! e' K7 e" k( T} |
|