|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* e9 R: p4 @3 X7 @6 t4 G O" f, p8 e6 D; c6 E/ ]5 p' `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. D7 I8 B$ q& G+ Q9 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 ?3 i7 \) p$ Z5 g: Pswarm.SignatureNotFoundException
- @/ O+ ]! E Q% S$ F at swarm.Selector.<init>(Selector.java:76): a1 e/ K; k' t8 C) H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* L9 V3 T! g! A% C+ I
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# W! w5 D+ d' j1 k8 c9 o$ }
! e# T8 w0 U) T
- `/ D1 P! x7 p( ~! C8 pimport swarm.objectbase.SwarmImpl;
: q' s% \- s! ^3 ximport swarm.objectbase.Swarm;" f) Z, \1 [, [7 w+ @1 H3 m. Z
import swarm.activity.ScheduleImpl;* _) N- @3 F1 }& I
import swarm.activity.Activity;( r, A" G4 t2 [# Y
import swarm.activity.ActionGroupImpl;1 O2 q# R' D/ {& O# Z! Q3 D
import swarm.collections.ListImpl;
% m6 v# ^" X& z6 yimport swarm.defobj.Zone; ; `) Y3 P w( e$ O! @4 J0 h+ t" C9 @
import swarm.Globals;
" C1 n5 g$ G C9 Kimport swarm.Selector;
7 X }( p$ Y- C7 M% bimport swarm.activity.ActionGroup; 7 [ |0 N- c# u0 q4 R
class Agent {
7 l- F W0 F7 n8 F D9 N char id;$ {. n# _+ l a6 `
$ ]: l9 T/ l4 g9 M7 A6 I
Agent(char id) {
+ `; L7 j. \+ Z6 A this.id = id;
; A. Y& \% x& Z* [8 @8 P }
! I! K/ ~; y2 U( n" J6 L, _% D% ?- F7 ~5 C5 i' n
public void agentStep() {! o! _1 L" U5 |- y- g6 d, X0 S
System.out.println(id + ":" + Globals.env.getCurrentTime());
+ P3 V4 c% [( O5 D }9 K1 D+ A: h% c9 u n
}
. }8 D4 Q: Z% d8 i! g I/ X
# r6 V: m) {/ j9 Jpublic class ActionGroupDemo extends SwarmImpl {3 }9 R# Y8 N) [, b' p0 H- i! N
ScheduleImpl schedule;
! o2 s% a: k- p/ E ActionGroupImpl actionGroup;0 }# ?7 Y; [( H8 c" n' y
ListImpl list;% N/ u: n! c8 P
char Id = 'a';1 G6 |. i8 L0 r7 J/ k: `2 j
! S1 j+ a X- [! @3 s8 W5 d
ActionGroupDemo(Zone aZone) {
$ c; A! ?6 y: M super(aZone);
; N* h) T- W' I0 t& I list = new ListImpl(aZone);5 d5 e) ?) }5 I; K' A5 m
swarmSetp();+ C+ X8 q$ ] {& t1 }
actionGroup = new ActionGroupImpl(aZone);
3 ]$ k: F/ v: S# X$ R Z# W schedule = new ScheduleImpl(aZone);6 A. o* Z/ k( g, b8 z' x* X
try {3 b3 {4 k6 ]0 _+ J+ u4 O$ Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);- G& }- V0 ~0 E, A8 ?9 P X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. H7 ]6 l, _0 r
5 I7 B+ L3 M, z' f
actionGroup.createActionForEach$message(list, agentSel);
# }* u6 ]) K9 @6 X" P actionGroup.createActionTo$message(this, swarmSel);6 G. o, X3 M% M" u' r
schedule.at$createAction(0, actionGroup);
- d' W8 n* Q4 L# v7 q8 i: ~ schedule.at$createAction(1, actionGroup);
2 p2 c' G0 T: t; D+ y$ |$ ` schedule.at$createAction(2, actionGroup);
5 r; J7 l1 q( Q- q
! o7 N- W( Y+ w } catch (Exception e) {
. M+ {9 \/ d( R/ P+ r e.printStackTrace(System.err);
# C+ T; }" p$ ^5 Q$ O! i //System.out.println(e);6 }/ a6 P$ H4 x
System.exit(1);
5 o5 O+ S5 _& G9 n. Q; _ }* Z$ ]7 `4 c' M6 |$ @, M, z Y7 v! P
' @! f2 z, H- u% B0 X) S* U+ j1 I! }9 K
}
( U8 O) n. x8 b- M# K3 V$ |- n, `
private void swarmSetp() {6 A @- g, ^. B+ d6 C: `
list.addLast(new Agent(Id));; `3 T& F( K4 w- Q8 b$ O* ?
Id++;) ?$ ? M7 K9 {8 t/ }! H
}
d: e! A b2 x8 v$ j2 n# j' h3 N
, u0 h5 ~& h6 | public Activity activateIn(Swarm context) {
0 I( _+ h T# U k5 x. [ super.activateIn(context);( x' @- F4 P+ p+ T) u
schedule.activateIn(this);
* i+ r; [' W1 e& N, {4 I return getActivity();
4 L* E* T: {% |, [* p" a) O }9 l. E+ R4 ^' r F8 a
5 t+ k' M' G+ @8 i) V5 S public static void main(String[] args) {. C& u: ^; k7 M4 {- w$ M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 O1 g8 I0 i% f0 C. o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, H' B: X% r0 r: L1 o swarms.buildObjects();8 d/ r" _4 \2 A9 D: x0 n5 u" d
swarms.buildActions();
) B, N# u+ j3 @& J# u4 j swarms.activateIn(null).run();" r' e3 S. A& e, g+ W& ^
}
: K9 E5 O7 ]* w. O
: k4 j: n; L9 I# X9 ]% Z} |
|