|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) c' i7 o7 z. B5 ?- e% U) s5 \% n7 H
6 ~' K8 Q P' L! @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ I4 T8 i Y# J; N2 m$ w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; [5 y4 t# C1 X( Lswarm.SignatureNotFoundException. L" c% t5 ?$ m4 \ }4 t
at swarm.Selector.<init>(Selector.java:76)+ e- x/ B) R/ q! t. o# t, v# a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! J1 ^& J$ H$ W L5 D# Y& B7 D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! z+ v7 {0 ]) t3 i* ~
5 @/ q1 v n, e0 J4 d" | E
3 K! k+ b3 I# ^/ J! M4 g& zimport swarm.objectbase.SwarmImpl;
; ^7 ?: ?' X8 z5 @2 Himport swarm.objectbase.Swarm;
O: Q5 U; { e+ B; X9 {1 O( E7 fimport swarm.activity.ScheduleImpl;
+ y" n* h( L) ?! M$ B! iimport swarm.activity.Activity;
6 O) Z& {8 B5 o$ @: |0 e, Vimport swarm.activity.ActionGroupImpl; T& ]4 M. C8 z3 m' A0 O+ S
import swarm.collections.ListImpl;
/ N! Y( L7 \- Iimport swarm.defobj.Zone;
9 s" }$ @% N6 R1 t* jimport swarm.Globals;
; V* F5 t4 t) [! @; [6 R$ l' Rimport swarm.Selector;
; i* Q" G% J5 M. w' n; ?* l* y Vimport swarm.activity.ActionGroup; 2 l& G0 D* z3 J$ A
class Agent {3 e' Z6 \! r* G5 r/ w( M, G1 _3 J
char id;3 E0 y; Q1 `5 y B# t# `
- U1 W5 `: V( P( T" H
Agent(char id) { `) v$ p& S! g) ?! \# V
this.id = id;9 h; }- s8 ` Q% f4 \" T
}: P& h) ]' \( [8 d" E$ O$ N
3 x1 D3 ^6 b& D+ N+ H7 q( T) o' C
public void agentStep() {0 d4 d6 {( ]0 N7 r
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 R D9 H# v9 z. Z0 H }
7 k8 Y. N1 V: Z* i* v2 i}
. D! q) { Z5 Q/ @; w
* _) E& R8 `/ m; @% g9 }public class ActionGroupDemo extends SwarmImpl { [; g9 u& ]2 q, q7 u
ScheduleImpl schedule;. B x' h+ J: a9 g1 F0 G+ i
ActionGroupImpl actionGroup;
; s* ?+ x% b4 A! p/ R5 n+ c% u% R$ c ListImpl list;4 G; Q C i( l
char Id = 'a';# D7 s9 X p% `: U8 D. f* X
+ Z& S C$ N3 Z9 U3 e/ ^. \; T ActionGroupDemo(Zone aZone) {7 \7 L+ g7 M$ n
super(aZone);. K% r, V9 f3 x/ p! V# w; \$ ^' d6 H! f
list = new ListImpl(aZone);9 t e: ^: u) P9 Y% u1 @2 C
swarmSetp();
5 H* }2 V9 s- r, s4 b. k1 t actionGroup = new ActionGroupImpl(aZone);
6 p0 b% x% x3 j- I0 G: I schedule = new ScheduleImpl(aZone);3 u, C6 `& c% C- b
try { D( @: {4 X& r6 T
Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 W! d C# g0 N Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* D+ J- \9 B1 p0 j# ?' W
: B4 u% M- v% x( M7 Y
actionGroup.createActionForEach$message(list, agentSel);7 G3 `+ z+ c2 k& T
actionGroup.createActionTo$message(this, swarmSel);! m0 G2 {$ F! U
schedule.at$createAction(0, actionGroup);
5 E: ^: X8 I- j schedule.at$createAction(1, actionGroup);
% M! u8 x; K6 T7 P8 e; ~7 w# o schedule.at$createAction(2, actionGroup);
1 |8 o' W$ V- f7 @) V! Z) t, O& g: r) A; a# g
} catch (Exception e) {9 }/ T& o6 \+ Z. a
e.printStackTrace(System.err);- x; t- |) {8 M; F0 p
//System.out.println(e);" x5 V6 Z& }/ r% j9 E; e; G
System.exit(1);
& e% |/ t H* d3 O$ p) e) U' S }# E) K" B# u: x9 }( C) Q6 g# |
/ M2 ~5 y; K$ y, Y {% F3 x
/ Q7 g6 J. C% {& f7 ]9 X$ Z
}
: @. b/ f" X( E; S; j# ^7 w: v5 q+ _
private void swarmSetp() {
1 `7 P4 M" {8 ? list.addLast(new Agent(Id));- L' i$ m5 M& m" { N( @- w/ i
Id++;, Y. H; t. G+ K) {
}
) ]7 T) Z" m& b1 p3 ]; _) K) G/ _) u( o3 F. h: L" k
public Activity activateIn(Swarm context) {
8 k2 k$ O' ~" Q3 L8 b( I super.activateIn(context);
6 f4 N- h r0 M2 ^$ y8 L schedule.activateIn(this);- B3 u3 v; F* [( s- Z8 _0 I- c& b
return getActivity();
; C* W! g# U$ n/ s; g1 { }. ]3 g7 ^9 e0 q" F) i: [. ^" T& i
% w7 s l# I( T6 m1 X
public static void main(String[] args) {
& D& a8 K6 T) m% w# |1 W5 U. G& Q$ f) N Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" a0 ]6 G L3 q/ c Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) K7 _( n) ]( V8 ?5 { V k swarms.buildObjects();
5 r$ v. \/ [; @9 j swarms.buildActions();
' w- x9 A( J2 S swarms.activateIn(null).run();
# Z8 t) {$ { F: t! Q# g }
5 H4 u% s& @0 f" G# }6 y! g) s
" Q# E' T' R2 R& r# n) P! ^} |
|