|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 x0 U; a' |+ h
* Q) l7 O* U" |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 k8 J9 p; c, h8 @) H- Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) @: a4 i6 V- b/ e- f$ p' z
swarm.SignatureNotFoundException
+ J$ j0 F/ ]3 ]" X6 V at swarm.Selector.<init>(Selector.java:76)+ ~9 e2 D& s) q+ V
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% P( y% ?; l& a3 k! M
at ActionGroupDemo.main(ActionGroupDemo.java:67)( ^+ R8 p5 l Z" m7 I
4 [+ x5 g2 z7 a$ A/ b+ V9 V; F
5 N; }$ k) W8 n, a! Q
import swarm.objectbase.SwarmImpl;
0 b; M( `1 d( e5 y& ?# b. Iimport swarm.objectbase.Swarm;0 g- o+ u' U6 j8 S$ T% z
import swarm.activity.ScheduleImpl;
; J, V2 k* J. d- j Oimport swarm.activity.Activity;
/ d) h: ?& q5 T3 P) n/ D0 d: Y5 Zimport swarm.activity.ActionGroupImpl;3 v. S. N9 B5 P E0 E
import swarm.collections.ListImpl;4 A: ]7 f/ z! K: l1 a0 P9 [/ Z
import swarm.defobj.Zone; % t3 @$ Y3 ^) C
import swarm.Globals;8 F3 F; n, L5 o
import swarm.Selector;2 J% h5 i& j3 e* b0 A
import swarm.activity.ActionGroup;
% u# Z! P* [1 ?+ Nclass Agent {
5 P# i' N4 b) Y$ p* w* s char id;& M0 w! B1 c ?) A
; W6 n' P$ X& I3 \ Agent(char id) {3 H& [9 E4 F: D0 y
this.id = id;
- z5 f1 a* w* N1 N) }8 o/ B }
4 M8 m, y' h- u+ a+ H
; J3 E" o; r) E: Z, I$ {5 ] public void agentStep() {
) p7 V7 N# G, r8 e System.out.println(id + ":" + Globals.env.getCurrentTime());7 [; @% b) I W7 l) f* T
}
( S7 y0 O# P. X& e7 e2 n/ I}, H2 A O% u, m& a2 v5 U: Q( ?
/ R! ^" s4 Z5 X
public class ActionGroupDemo extends SwarmImpl {
+ O" n! m- m/ m ScheduleImpl schedule;
4 J6 M& A& L. v ActionGroupImpl actionGroup;* i: w% w! ^, ?: R- R9 P- z
ListImpl list;! }% o% v0 A+ R! H3 K3 Z5 _
char Id = 'a';
+ X- B: o! a" M, s& S% F- F% h, f+ C4 d
0 c5 |; @9 _8 |5 O$ f- K6 e ActionGroupDemo(Zone aZone) {
; c" } C e4 F+ u) F super(aZone);
. A( i2 T" W$ V$ J; d list = new ListImpl(aZone);8 ?; G2 q& E& }3 r0 @% X1 F. n
swarmSetp();
/ `% g9 R8 w& q6 P4 R$ \3 q+ a! J actionGroup = new ActionGroupImpl(aZone);7 Q' q; k9 u" P8 A0 C" g* K
schedule = new ScheduleImpl(aZone);
8 t+ g; D$ O$ Z& E& _* |2 D: X" L try {
& C1 @& n& S" S0 m( \5 m. m Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 U0 J) i. T/ A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ u# H) N& G" l6 N) i/ u4 ?/ o
. U- N7 a, o; E: D actionGroup.createActionForEach$message(list, agentSel);
6 e" Q/ v: O6 D D2 ? actionGroup.createActionTo$message(this, swarmSel);
$ y7 R1 ~4 D0 X1 ^" B6 W schedule.at$createAction(0, actionGroup);
3 N# @, R% E5 g8 d schedule.at$createAction(1, actionGroup);# j$ u) Z+ }/ ?# x, ^
schedule.at$createAction(2, actionGroup);
' z4 }' K( r0 Z' z) P/ L& M
' U: f% y( C$ E: N% c6 u P w } catch (Exception e) { g: U( z2 B: ]! I8 Z; r
e.printStackTrace(System.err);
5 K" x4 @7 `+ P" x( H" ^ //System.out.println(e);4 g" ^* g3 G" g, y
System.exit(1);: u6 S% h/ L# ?1 E# O! G5 a( f
}
# s( y2 T8 f# [: h6 t/ _2 [4 L6 W( R0 ^$ W: a
6 b1 K8 D8 f5 q! T
}$ E+ S6 m9 v# [& f
$ i \! k! P8 l8 `1 J. ^ private void swarmSetp() {' o) Q" S" c- K! d% C: b8 F+ ~9 r
list.addLast(new Agent(Id));- O' Y( s9 d1 ^, U- S+ N' L7 @
Id++;
7 y8 @4 c+ g/ o }
3 c5 G, O- z% H3 ~+ b3 m8 M8 [* M6 S/ v
public Activity activateIn(Swarm context) {
" E) v- l/ ^2 p. l. H super.activateIn(context);
) m" _( n5 B+ X; D schedule.activateIn(this);
9 [- w0 v4 L b5 g& l return getActivity();
4 i' N* N6 V5 f' H1 U }! p8 L8 A( R( M0 u7 v( a
6 a2 R% x2 ^* S
public static void main(String[] args) {
0 p$ Z! e. p4 O3 S) K& c7 ]$ D Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 r! `1 g+ G8 w n& I/ L/ a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" Z2 L1 Q; r0 `5 U3 M# v7 u+ Z
swarms.buildObjects();
& @: t; p5 t) N0 f3 G% B- d swarms.buildActions();
+ E, J( K0 w# K) t& S( O swarms.activateIn(null).run();
, G3 R3 ~9 ], ~. K9 `/ { }3 [ R1 B3 m. I5 L
, X+ t; q; u# H+ X7 W. w5 N; \} |
|