|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . X' k; B2 s4 n/ e
5 O% a- A( m7 K5 ?# i# [. c' G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 q4 a& ]4 D; c' Y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. e% y5 J3 A' u. Q/ J3 n4 gswarm.SignatureNotFoundException
I& h" y7 e& D+ d) s! [ at swarm.Selector.<init>(Selector.java:76)* k2 D& b$ j) A& q/ ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( p4 M! Q9 \( [7 W8 \
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; q6 V4 z. ]$ h* L5 j: m
y/ }, W' ]( Z# e4 x7 u% F6 A, V* X N8 M1 U2 k# a! d
import swarm.objectbase.SwarmImpl;
0 `$ O3 o D8 [$ e+ A: w m6 ~2 n$ yimport swarm.objectbase.Swarm;& A6 R; y* w ^1 o
import swarm.activity.ScheduleImpl;
: S+ j& ~# f q( |" p4 B) `import swarm.activity.Activity;5 y# Q# v; x. p2 l
import swarm.activity.ActionGroupImpl;
5 r" J6 ~! L$ c8 Z1 uimport swarm.collections.ListImpl;2 r, o+ D8 K2 O* k1 y
import swarm.defobj.Zone; ( |9 j y* ~$ [3 U# A
import swarm.Globals;1 V: M- M g2 ?+ J' m! u% D
import swarm.Selector;
* N0 F# L. }/ n: N* @% Pimport swarm.activity.ActionGroup; 1 n& [4 w# B' i y- v/ I( J
class Agent {
% e' i3 |7 E2 b. X6 _ char id;
* ^6 y- e/ J# N0 e8 j; q' P6 s$ p4 X4 c1 W1 \
Agent(char id) {
; w: N0 S+ D5 p7 I this.id = id;
5 e; Y- U6 I2 C3 I }" u8 f" X8 a$ M6 S% ?2 w
8 w; g: B/ j5 Z( \( e
public void agentStep() {
+ q) n& l0 R, D: F$ c. L. `, c System.out.println(id + ":" + Globals.env.getCurrentTime());1 {4 f- p4 ], P+ X, M2 m7 `
}6 r- g4 J$ J: u! e7 W
}+ T: N+ k# R" y
8 p* L. T6 Y# B; }0 ^1 y- [2 j4 ]8 U! ]public class ActionGroupDemo extends SwarmImpl {
9 j$ U+ L: X( A; w# h2 h ScheduleImpl schedule;
2 e' i3 u: x& Z; Q( ^ ActionGroupImpl actionGroup;) p4 A0 G4 O/ O8 d4 d
ListImpl list;0 r/ c% T1 U/ ]$ }) z7 N
char Id = 'a';
5 ^0 R" }6 @) y# k# J
; y' a9 r* n& r! R# e0 v8 M- k) T ActionGroupDemo(Zone aZone) {2 O: c. c' c4 ?6 j' i
super(aZone); N& p, m+ p6 Y& X! z+ f4 B
list = new ListImpl(aZone);/ }" h5 l- ^2 f1 j: l' j: [
swarmSetp();
' k [' l% }: \! S' A& l D9 W; j actionGroup = new ActionGroupImpl(aZone);
2 W+ X" o1 O6 A5 R) c9 B y* }$ { schedule = new ScheduleImpl(aZone);
" ~ C. s H% ]! o try {! `5 V( V1 m1 }# x& s1 A
Selector agentSel = new Selector(Agent.class, "agentStep", false);
: t' Z. L8 C+ `% ~0 G& c; L) f$ B Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 [+ d2 P/ j& Y
. t( r0 K! c0 b
actionGroup.createActionForEach$message(list, agentSel);
V3 @% v0 X; O% P" ~ actionGroup.createActionTo$message(this, swarmSel);& R* h: y% I0 B: J2 D- l; M) g
schedule.at$createAction(0, actionGroup);2 ]4 \4 [1 h, L4 v: q" d
schedule.at$createAction(1, actionGroup);
$ y% J$ A( H) d# W. Q schedule.at$createAction(2, actionGroup);
7 x; u& E% I3 S7 {) H' I
2 J2 [' s7 n' X) @: F1 s6 ^ } catch (Exception e) {
u4 z3 i8 y' d( D e.printStackTrace(System.err);
& v G! U. @* b+ f3 H //System.out.println(e);: Y1 Y ^2 q! d% Z
System.exit(1);
6 h4 f! D& C, u }
1 A3 q) ~% v4 q% z5 @; O; ~2 u- l
f( L( a/ r) P! V4 L5 J3 g
1 ^0 c" L) B9 l }
) d/ z2 g# v# P* D
" Q3 s( L7 D( I6 t3 G; B private void swarmSetp() {
1 ?) f9 s s) F& m; T g list.addLast(new Agent(Id));
9 a4 R* f" L0 N6 i6 ? Id++;
W/ ]& Y' [1 x% R3 G }
' }" \; l. O9 s" s$ m0 g! L9 L. ^" t* b
public Activity activateIn(Swarm context) {
$ C3 r! Q; E1 m super.activateIn(context);! c# z4 h" p2 W/ Z, P
schedule.activateIn(this);$ L1 j2 W, O- {( B" H& i
return getActivity();+ }* e2 W+ H8 B
}6 R2 n& q5 Y8 \
; _) t& d! B7 A/ r; Q
public static void main(String[] args) {
7 k* \ F5 M" J% j) k: u' G! e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# i" ?2 z- |$ ]8 ]0 |& u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! J7 J1 u$ W0 I swarms.buildObjects();4 c" F$ r% h5 C/ C, K. d
swarms.buildActions();
! Q, a& \/ d6 b# j4 h swarms.activateIn(null).run();
- `- f, s' V" q }
5 Z- M0 i! p2 R5 S5 \& F
_' P# G- x- `+ E} |
|