|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 u' B0 V- W$ _3 ?% H8 e+ L
6 f. j% B! T8 Q) @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& H0 y8 U# U; v& w* X1 I& Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ a9 ]3 O& p9 a6 `. ^ Nswarm.SignatureNotFoundException
: |, g" S- H9 j: ?/ M* b( \ at swarm.Selector.<init>(Selector.java:76)5 v- f* c* C* D6 u
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 J. B h) o5 }* b( F2 z1 l c, C
at ActionGroupDemo.main(ActionGroupDemo.java:67)8 n* D( I- ^2 C- E
1 G) h. T. [/ K2 l Q( d9 Q
7 [8 D% r! T0 ^4 }4 rimport swarm.objectbase.SwarmImpl;2 ?' U/ G6 }9 o2 B
import swarm.objectbase.Swarm;
/ V/ R; l3 L$ c# x# H$ I$ o- }import swarm.activity.ScheduleImpl;5 I3 z5 K% J" P5 |) ~" o" L& V9 [3 o
import swarm.activity.Activity;9 u! O( f# W1 k' a3 u7 i
import swarm.activity.ActionGroupImpl;
$ I0 u2 O, u7 C' Y- Z8 vimport swarm.collections.ListImpl;
/ W& I0 y7 T) H: H" rimport swarm.defobj.Zone;
8 B9 T4 G& D4 y! ~import swarm.Globals;
+ g1 Y: N9 K6 P7 u0 C5 o0 Limport swarm.Selector;' Y" r- ~& ?, u5 ]6 y. ], x% b
import swarm.activity.ActionGroup;
/ X: j o& F3 v9 B& Y, z% pclass Agent {# Q/ ~% b h) m! g& O. {6 n
char id;
/ }: C3 V6 T, p5 s: N. @1 t5 [; c2 v1 k2 W7 \# m* n
Agent(char id) {
) g$ e+ p& @+ m5 ~( v this.id = id;
% n( `; N8 P ~0 Q }
1 K; r( S( h X6 y; E: R! W+ ~5 q' N' v
public void agentStep() {9 {) j! H2 Z: i/ n
System.out.println(id + ":" + Globals.env.getCurrentTime());
* y; i2 O1 N7 Q! o, e }
9 S+ y4 x' r' S5 @5 c$ `}: e8 u. N5 Y) N1 l) ]
/ O$ q1 k! @; h0 ^public class ActionGroupDemo extends SwarmImpl {
/ e5 p4 G* x+ n5 p1 B ScheduleImpl schedule;
- }- ]4 O6 g) i) d! H" e ActionGroupImpl actionGroup;' k" a' k! w! a
ListImpl list;
6 P1 N3 M. n1 ~ g) ^ char Id = 'a';# `# _3 \4 ^* Y; u' G7 }- ]: R
& J4 A4 N* A' T3 i+ Y2 _
ActionGroupDemo(Zone aZone) {
; I/ ]+ L# }4 M# i1 c% x super(aZone);
! S) d3 c1 i% o! l list = new ListImpl(aZone); {/ O2 C& ]/ j) y1 E2 \
swarmSetp();/ X1 j: B" g7 `, D4 ?: S7 q
actionGroup = new ActionGroupImpl(aZone);
( M/ H, L& U, ^( Z" q3 T$ w schedule = new ScheduleImpl(aZone);5 V9 W, Q' r+ o. |8 y7 {& w; ~7 \
try {
R% v* }0 L! F" o- I$ u7 V3 w1 g Selector agentSel = new Selector(Agent.class, "agentStep", false); v" `9 B0 k2 Z5 m9 C3 \4 e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; C2 }, Y% u! ]8 \
8 H( ^6 }. s6 q8 Y3 z actionGroup.createActionForEach$message(list, agentSel);+ C) ~/ I4 u! w2 @+ Q. W
actionGroup.createActionTo$message(this, swarmSel);2 @% E8 I5 v1 n% I8 k+ l0 Q
schedule.at$createAction(0, actionGroup);
8 K$ H" Y. `) Q4 v( r5 X schedule.at$createAction(1, actionGroup);
* m" U) O x! S- J6 b; k schedule.at$createAction(2, actionGroup);3 a9 d9 Z' I5 k3 b
# s% e) Y$ X# ?3 _" r! X9 {- Y8 o } catch (Exception e) {
% G, J* z3 e5 ]1 ?7 P e.printStackTrace(System.err);/ \, ]: x- g+ O+ p' \7 ?( `- D
//System.out.println(e);
) N! L% U& h [$ b% @# ~; a2 C System.exit(1); Z6 d) r, G( j# v* U/ ~
}
& z0 c' w/ }: g L6 D5 a! d: ~
, D1 Q7 t, \; Y+ d) w6 V
0 P4 C8 r4 n# b! @3 p- I }
& x# ?7 S# r5 L, H, |6 E; c/ ~4 B9 p0 n6 R: Y e" \
private void swarmSetp() {
' e* [; a9 b9 [" f list.addLast(new Agent(Id));
2 c2 W5 p. L$ J% q) H Id++;
; k2 G7 |7 `- o4 H- L# j) b }
- i( v9 o# ]" `/ m0 f' ~8 }1 m' T2 r/ C/ l( P
public Activity activateIn(Swarm context) {1 k' \+ i9 f u( v) M' @
super.activateIn(context);
: p$ _, q/ W; @4 w0 |1 T* w schedule.activateIn(this);
! c# u5 Y6 C: B return getActivity();
d5 l" d" N! }* _3 R }
. X) b- l2 M1 z1 ~5 ^- d6 B
# v# }/ z0 v# |5 r% S public static void main(String[] args) {' V2 j; q% R, b7 {' j' B
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 A/ F. G9 P5 C, y% f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! F# ?5 }. e$ A3 x+ z swarms.buildObjects();: l# ~. l% f3 [# E6 s+ |
swarms.buildActions();4 n+ a% S1 v4 R5 |; q
swarms.activateIn(null).run();
9 Z6 z) e$ j* o# | P }. R" M: z m1 s* x0 G6 n; j0 T
2 o! V6 ]" h4 x) I* H% `7 O& k
} |
|