|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % O D, v6 ^& S- y
. d, d$ `' c0 n$ r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 |, I% X& E$ o; T; w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 p, s5 U6 W' P! N- f( h
swarm.SignatureNotFoundException S4 ?6 v' W# ^2 \. S
at swarm.Selector.<init>(Selector.java:76)3 S4 [ p+ D) w( L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 D% W# ~( p' M4 p at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ m; z" G( A5 ^$ F. b) C3 a3 u3 H, c" e) o
1 J* @4 _+ ^+ n z H. R& }# @; J
import swarm.objectbase.SwarmImpl;
/ g' S ^% N, U) {! C+ Vimport swarm.objectbase.Swarm;
4 s+ ~* Q o9 Q& k+ Y! K1 eimport swarm.activity.ScheduleImpl;: p1 Z; ?% t4 F1 c8 @! A$ F
import swarm.activity.Activity;
5 t* B3 a6 D4 y/ g; c' cimport swarm.activity.ActionGroupImpl;; c- f" B( g) R7 J
import swarm.collections.ListImpl;
! y) b' a6 J0 x* B. Dimport swarm.defobj.Zone; 7 Y/ p, `0 _: q
import swarm.Globals;
% L! N2 }# `* n+ m; Nimport swarm.Selector;9 r4 Z. R6 G, B4 o9 [. b% h
import swarm.activity.ActionGroup;
* N) y4 j: [. z! O0 Jclass Agent {4 Z# \/ r1 @& c/ |6 `1 e4 f
char id;$ b- |( L. @$ `. f" J X
9 \- Y. n$ b" x# `/ e' l Agent(char id) {: k2 X" b, B7 A8 s7 s/ X
this.id = id;( B# e! y# K; `& U& B
}
4 B& M5 ?- w; D& S3 V4 ^% u% N* j! S/ |4 ^/ G0 S& O4 L! {4 T) w/ r! ]) f7 @
public void agentStep() {; m2 A% F. Q7 _6 u$ H' C! F3 l
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 s: D) {' h( r$ _0 h# l- B }
( P5 F( X9 F) Q1 K5 v/ w}& t" }( I8 K/ C0 G
, w! k% K/ J& Q: H) [ Upublic class ActionGroupDemo extends SwarmImpl {8 Q1 K8 t8 S, g: w% r3 B* ^1 P
ScheduleImpl schedule;+ q" U0 Z& x5 A7 X5 g/ _$ H
ActionGroupImpl actionGroup;
$ E+ _8 g: w7 o# @% Y8 n+ q# j ListImpl list;
* W; N. e+ T+ J char Id = 'a';
- k$ P0 G- W# V3 ]
0 Z: j8 z E0 H; e l3 D+ [ ActionGroupDemo(Zone aZone) {
8 [! I+ G; H$ q super(aZone);4 S8 `8 w+ g# b* _
list = new ListImpl(aZone);
! E7 x2 Z2 s# I4 g- V2 v swarmSetp();2 b+ h7 m+ M6 p3 [
actionGroup = new ActionGroupImpl(aZone); [6 V4 q: s c4 i. W% R) l
schedule = new ScheduleImpl(aZone);1 j6 X3 k# Y/ \' R
try {) K; X! [4 K: \+ u3 w( H: p7 K5 i
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 I. y- d Y* Y3 `+ T
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% J. v* Z( z$ r0 l8 H* Z 2 {$ Y8 Y/ l& q
actionGroup.createActionForEach$message(list, agentSel);4 G, v( x# y$ i7 [2 C
actionGroup.createActionTo$message(this, swarmSel);; x7 G& p+ f) f% X5 x, |+ a' M
schedule.at$createAction(0, actionGroup);
, P! e& n1 L+ E5 c0 h) ] schedule.at$createAction(1, actionGroup);
% L2 \+ x$ c# j3 a$ w' t schedule.at$createAction(2, actionGroup);: m. F5 j& W2 P3 p2 H- C+ q8 {
: d: ]' \2 ^ U c# R4 ^5 l } catch (Exception e) {+ ^ w, u' m# _6 G$ B
e.printStackTrace(System.err);- d5 w2 _" d' r0 F# V# G
//System.out.println(e);5 I% v, j1 j& \3 h5 L ~* {, V- u
System.exit(1);5 B) C, Z( L1 }$ J+ ?
}3 w, F+ @' l& ?) J
7 X7 y9 r6 M6 o: l. \+ T# K0 r1 j# k" g$ T" T3 C" w+ y
}
1 F: ]- r; B0 X+ b- G8 K
. t d/ u" n+ R private void swarmSetp() {+ h9 T- m" w# S% R2 O
list.addLast(new Agent(Id));
& N: P( X5 {6 V3 ]1 Y/ M& Q$ g Id++;
$ Q% V5 @* H3 N3 X5 h0 s4 M; r }
% n$ P# E7 L9 G0 s7 D; M1 p0 Y! p/ e& G1 O4 R/ L/ E. Q
public Activity activateIn(Swarm context) {
& l1 R3 |9 c& u6 Q2 R5 I0 [ super.activateIn(context);& ?6 Y0 T8 T6 I* m
schedule.activateIn(this);% a1 L) ^7 @1 p) S+ w% _8 I. P- R
return getActivity();
2 H" c. ^8 J! ]% A/ f- t; ? }
6 L2 Q) D9 o) [6 e7 f3 G) H
! |; t) B2 b- Y public static void main(String[] args) {, f; k$ Y9 g. ]! c! ^# _& T9 \
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) c7 e. T6 p2 C' O* R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& U6 I6 o1 b3 O2 }" m* \5 J9 @- |
swarms.buildObjects();9 P; g9 X' d2 [. R- |% p
swarms.buildActions();
! K- y( _5 u2 {( e p swarms.activateIn(null).run();$ s0 a q9 B3 h6 [7 \
}; \: B& A) r* N7 a
1 U5 E7 c- X" J9 H( Q. M} |
|