|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& w# R! {/ E# o( l7 U& K g3 Y2 v4 H1 r+ z: d" |; s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 [; J& T4 |' W+ I* k9 Z" f6 k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; |5 P! i" M- xswarm.SignatureNotFoundException. N& L% }( L' Y
at swarm.Selector.<init>(Selector.java:76)
8 R( s8 V, { e9 l( ]" u) I- R* ~ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 Z# P! q2 Z" G8 R: }. d
at ActionGroupDemo.main(ActionGroupDemo.java:67)% v' v' M+ N8 r3 Z$ P9 ?* I- Y9 N
" M/ e: m! g2 E
3 e0 R' y8 R! W8 Pimport swarm.objectbase.SwarmImpl;
! ~+ F* Q; f4 r- Pimport swarm.objectbase.Swarm;3 q$ p6 ?* U# v1 @4 @
import swarm.activity.ScheduleImpl;
! Z( G" `# g1 y. nimport swarm.activity.Activity;9 v; H! _" v" s# p
import swarm.activity.ActionGroupImpl;
/ {/ u) \* t8 d- N y3 E4 S7 Pimport swarm.collections.ListImpl;1 j' e, O4 a- I( h" q, T- i$ x
import swarm.defobj.Zone;
8 y R' x$ D& y, a4 p, iimport swarm.Globals;* `' ?( @8 [& j' V) Y2 s+ q# l
import swarm.Selector;
0 N7 G, ~& ~8 r' ximport swarm.activity.ActionGroup; - A+ P6 k8 l6 L
class Agent {/ J* a, F: T7 x' Q/ D
char id;
4 v, R- l/ Y& m' [# y/ s8 |, G$ S8 \0 A
Agent(char id) {3 j( `' P- b, E* b
this.id = id;
6 L4 b$ ?; x- A \9 I2 S9 P } f# Z7 Y0 C; R: s% P8 ~" t" T2 a. Z
1 j6 ^% y" n: y public void agentStep() {
: D2 ]. p! f, w% m4 u2 D, L System.out.println(id + ":" + Globals.env.getCurrentTime());# S" q/ }6 _/ m, z; ~
}
, i9 J: G8 B4 m2 ^0 e# W}
4 R }& t( v$ r( m! v8 n1 ]( ~* \, G1 [: }! i! k/ K! y
public class ActionGroupDemo extends SwarmImpl { i% G% @' @4 v9 b$ [# L
ScheduleImpl schedule;
, `; G9 |2 A+ ]' {7 ]6 z/ B e ActionGroupImpl actionGroup;! q" h' r1 ~3 p! n, L( B' Q
ListImpl list;* k, h2 z" P4 \# h- l
char Id = 'a';5 G" a6 t( ]5 m* _
$ o" L; p( Y: ?# | ActionGroupDemo(Zone aZone) {
! R" ^7 I* _' b; o, { super(aZone);
9 w- R4 h& N7 Y list = new ListImpl(aZone);" r3 T5 E) _$ u9 l t9 k/ e
swarmSetp();! B5 Y% r t9 L, r
actionGroup = new ActionGroupImpl(aZone);8 \) M% Z0 v t! ?, N j
schedule = new ScheduleImpl(aZone);
2 h# Q; P2 J5 i0 C try {" |- @1 R2 p4 c5 C' S$ p/ ]) V
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 u+ p2 W6 d- h% B
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( n3 |5 e% H/ R/ L, C
# O2 t; l8 N0 J; z actionGroup.createActionForEach$message(list, agentSel);$ x: E' D3 T, k# k! i. @
actionGroup.createActionTo$message(this, swarmSel); r; I' o: z% S9 j% R, P% H
schedule.at$createAction(0, actionGroup);
6 ]% D+ i% H' j1 l4 Y8 f schedule.at$createAction(1, actionGroup);
3 ?9 x& K7 |: S- S4 z; `# c+ \ schedule.at$createAction(2, actionGroup);" Q/ H# ]) ]( `3 k# C
8 T& {- e9 ?: U7 l
} catch (Exception e) {) Q) S8 {, g/ ~7 C, l2 x' K
e.printStackTrace(System.err);0 G8 p! X7 i# S+ K o1 w D
//System.out.println(e);
2 E" O4 q2 P0 Q1 o System.exit(1);
8 Q9 ~" ~% f6 ] }
- ]2 o' g; b @( M; d! S# h0 X% e4 M+ @9 ^' b, y1 h
' i4 V0 S( S/ S$ Z8 z1 k. a% `
}
a6 ^' u7 a" a# u# ~/ R; o2 W2 ?8 h. q1 o$ V- D, x* n, I
private void swarmSetp() {
8 H. Q% L( @" r list.addLast(new Agent(Id));4 {" b- m' z: ^) C
Id++;
& i6 d& ]5 l' |: Z' s9 u i: l% z }
, M' B; Y1 E( p4 G* k: J
/ S* G* }9 \8 e# X% v0 ^% ? public Activity activateIn(Swarm context) {
3 c# j* K! ~; [, B) B4 R8 G+ | super.activateIn(context);
1 e5 r- j- e* e# j8 E* P5 H* H8 K schedule.activateIn(this);
* t+ p, Q/ i4 c* S return getActivity(); w, m( {& C9 s6 ?+ S. u4 o- L2 a6 l
}
1 g9 d6 H# V5 x/ Q
+ Z a* {- v% ~ public static void main(String[] args) {
3 g/ g) ~1 L7 @7 r8 |4 V+ h- n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! o6 G7 N/ G) J$ j1 q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ R- y: E' X, d8 L H3 @7 ^. _
swarms.buildObjects();" S( R/ L5 a/ E$ k$ f
swarms.buildActions();
- F6 Z: {- t6 t' V6 z# l swarms.activateIn(null).run();
7 E% E# L6 `8 B6 T% _$ H8 a6 W' { }( k) a! M( \! s+ w
+ Y4 S& T# Q' n) ^9 \+ B
} |
|