|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 K/ ^$ h0 p5 J8 Y" n
+ _- m' Q' Y M3 `' Y% G1 n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) y8 S2 t# J9 u5 V+ d6 U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 a* e2 s& L3 K5 ]# p3 U6 @
swarm.SignatureNotFoundException
1 ]( S: P' n# i% K at swarm.Selector.<init>(Selector.java:76)
+ R) N# `8 M* ~, n2 T at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* }) e9 ]6 ~1 q5 @" {4 J+ p
at ActionGroupDemo.main(ActionGroupDemo.java:67)- k3 o+ Q3 l) E
& Z ?# G9 C T0 u, k) H' I3 W8 F
% R3 D1 |/ B/ |% U9 yimport swarm.objectbase.SwarmImpl;
# H& i1 N% M. e9 d. p1 c8 Fimport swarm.objectbase.Swarm;0 X* H( A8 W6 x$ r) \% d" G6 P. U+ V7 m
import swarm.activity.ScheduleImpl;4 H1 k5 ~2 U$ I. L4 @
import swarm.activity.Activity;
: p9 N5 V; b4 p) S) X- S+ yimport swarm.activity.ActionGroupImpl;( D9 h& k; g0 H2 Z2 s7 p4 a' N
import swarm.collections.ListImpl;
9 j' l4 b O; A% qimport swarm.defobj.Zone;
" W# Z T; e1 g, G; |1 ?import swarm.Globals;
+ l" ]( T" O! `# jimport swarm.Selector; h( V: S2 b' f
import swarm.activity.ActionGroup; 7 q' D5 A/ D3 ?; v# K
class Agent {/ ^3 w+ R2 x8 l6 H; Z7 {
char id;
9 Z- z- \# n- }3 v8 d6 E* D! R5 [4 Z. |
Agent(char id) {
0 P1 S+ w$ C3 i; G) n& X/ Y this.id = id;: V5 d, q1 u H; c y" V# j4 M: o7 P
}
' S5 F% s1 h8 X! {" g5 Z
y Y; c S& ?" H public void agentStep() {2 \0 r7 |$ O# H
System.out.println(id + ":" + Globals.env.getCurrentTime());1 {3 [: v, r7 ~9 z- w7 G& \* X9 }
}: `/ d) n' N: v- j. P
}
; L" J% D$ u$ f
1 J! g1 _; @0 G. ~1 U; Cpublic class ActionGroupDemo extends SwarmImpl {+ P) w6 E" x+ d/ J+ a; o/ `
ScheduleImpl schedule;7 r' ~$ U& f S
ActionGroupImpl actionGroup;
6 k. P$ `6 T6 `; E4 w1 m ListImpl list;" V+ ~& V+ u; S
char Id = 'a';0 U1 @; @6 K. d
3 R7 ]* h( J; H/ M, ~, c
ActionGroupDemo(Zone aZone) {
|) V2 n) @4 P+ q super(aZone);" C: f7 J0 D4 W B# l
list = new ListImpl(aZone);% c* S: K6 i2 S- T$ I
swarmSetp();
0 g* y$ f) K- w$ \6 t actionGroup = new ActionGroupImpl(aZone);2 C' }: I5 ~- _7 n
schedule = new ScheduleImpl(aZone);0 {. J7 s+ C+ J G
try {
1 h6 I$ B1 R+ o" B$ }: q& p) f; Q Selector agentSel = new Selector(Agent.class, "agentStep", false);4 i* w. G# P5 j# h" _
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* k* h# O% S3 U! x
6 F8 c: n/ A7 V3 K- x, T) \ W5 b actionGroup.createActionForEach$message(list, agentSel);
6 z: h: S# H8 C ?3 h actionGroup.createActionTo$message(this, swarmSel);9 F0 F( R6 T5 d$ A" }
schedule.at$createAction(0, actionGroup);
0 W$ i$ u$ d: e/ a7 V+ E$ v+ } schedule.at$createAction(1, actionGroup);% f' v5 T) Y$ s2 Y( L
schedule.at$createAction(2, actionGroup);) e2 v9 R( R# H
4 j# d7 I, v+ V } catch (Exception e) {0 D5 s6 n* q9 B2 R; n4 u0 B9 R8 H& b
e.printStackTrace(System.err);
/ z$ p1 `3 o% W8 U //System.out.println(e);6 K3 o+ F- J/ }
System.exit(1);" e E \1 h/ |* Y
}0 w' P ^/ ]6 I) B4 K) [8 c% R" g
; y4 O" {5 c4 w& B) ]* ` O* i
. U, A! m/ I/ ] @4 O
}
" }, @# O9 \: ?* F
7 u k& i+ K0 A! k2 ?% \ private void swarmSetp() {
( Q8 T3 r' q2 N% e7 k' s" d" ~ list.addLast(new Agent(Id));
8 S- w; a; Z7 x; n( x1 p) e Id++;
P3 m0 i, E: l& j" r3 q; a }
9 m( P& H9 t$ N3 F
, T6 T4 L, T. Q0 u( l public Activity activateIn(Swarm context) {. a2 l9 G4 K9 x- a8 w d: P% J, x
super.activateIn(context);
+ y) W. ` {: ~; Y0 a3 _ schedule.activateIn(this);
' l4 z- g0 @/ l5 _ return getActivity();
( P+ \( @' h. C/ c% ^ }8 N/ P& P* l5 z& V8 C
& R+ \* T& O9 r8 q public static void main(String[] args) {, P! @9 u a5 q* D4 [2 U) Y$ g3 _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" z! a7 K& L& C5 H( | Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" e+ C6 r' O. ]* j1 {3 z swarms.buildObjects();
$ \- Y& X& J2 E% P8 g- ~ D swarms.buildActions();
" s8 P3 f" G8 d* ` swarms.activateIn(null).run();% F9 I* Y; g; D$ {/ ^' l
}
% l8 N9 ~ f8 W6 `2 d& D
% e$ G& u# o& i( z# @} |
|