|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & Z5 g1 x3 k M! A) ?- u
0 U5 \, E6 h' S0 l5 @, d+ b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! W) A" {. y; f6 D, b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 p z* Q$ a$ ?+ A/ h
swarm.SignatureNotFoundException
2 R4 J% L w( s8 x1 F7 T at swarm.Selector.<init>(Selector.java:76)
8 Y; w% J+ E/ t, y! q% e at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 x3 k o+ b8 d, Z at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 g$ M& y+ n/ J$ ?. y
& t/ r U7 C/ P, }
% j$ u Q9 A8 ]; K" t7 U& Wimport swarm.objectbase.SwarmImpl;. Y9 d4 h: ~* k4 s' s
import swarm.objectbase.Swarm;
4 \5 a" R" o" y; Vimport swarm.activity.ScheduleImpl; K( {$ Y4 D* S# y7 c) _3 k
import swarm.activity.Activity;4 ^+ v5 E. G& L0 g
import swarm.activity.ActionGroupImpl;- C, A5 Y+ E- D
import swarm.collections.ListImpl;
: _* U' P5 E2 u: l0 ~5 |import swarm.defobj.Zone; 1 v: Y) k3 `3 d: N3 i
import swarm.Globals;
]! O A) N6 @import swarm.Selector;/ F# d$ n+ k/ W& `" b
import swarm.activity.ActionGroup;
. F. y6 U6 ?, k: w+ `class Agent {
/ b, U' [! s) L3 |# g char id;4 f; P7 d6 | ~" B; n) s# l; f
5 }4 K- _3 ]" m v
Agent(char id) {0 E( F( H" p: K0 ]5 x3 z( B% {
this.id = id;3 m8 n2 ?. u/ [6 p0 W
}
% }1 T/ ^) n7 q7 S9 C5 p* A e6 n7 {; Y2 Q
public void agentStep() {' {) Y4 ~) g5 D z8 X9 {# ?
System.out.println(id + ":" + Globals.env.getCurrentTime());
. G; {6 t! S m& j D% Q# N8 m }
# A+ ^0 o9 o1 ?7 k) I5 i}7 f7 |2 k7 H4 X4 J& P4 n3 c7 p& l
( c* t J D5 o& k% K. Q% ppublic class ActionGroupDemo extends SwarmImpl {/ q. V: _, H* y! z. v# v
ScheduleImpl schedule;; `: x( e1 J3 d5 R
ActionGroupImpl actionGroup;
5 p7 J' V7 }- N& j/ Y; z/ h# g8 j ListImpl list;
' l6 \* ^0 m% U char Id = 'a';9 S' S. ^' T Z9 h5 |% e" |3 N+ l. d
: B- P4 @8 Q- S* l# v8 D ActionGroupDemo(Zone aZone) {8 U" F- M) n/ X$ t: U" r/ W
super(aZone);
/ ?1 p' |& c3 m) G list = new ListImpl(aZone);
: h$ j8 _' V+ u swarmSetp();8 J0 X u; T* ^1 W7 J& c1 N
actionGroup = new ActionGroupImpl(aZone);
& ~1 H3 d Z3 g$ q6 p( A6 D! p6 m1 U schedule = new ScheduleImpl(aZone);% C4 t2 s3 _* ~
try { D N$ O/ y& U0 i
Selector agentSel = new Selector(Agent.class, "agentStep", false);, a( I' G3 X# x! |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- U- I$ i6 U0 r3 q t; Z8 B 6 C, I3 |! A( X, n4 Q
actionGroup.createActionForEach$message(list, agentSel);
! a( j/ H, @* a1 V2 E. Z0 o. B actionGroup.createActionTo$message(this, swarmSel);+ P' ~. F, ], b' `1 |
schedule.at$createAction(0, actionGroup);( I9 }) G9 E4 `3 l- K6 d
schedule.at$createAction(1, actionGroup);
# j9 U4 i! _4 _$ l. ~ schedule.at$createAction(2, actionGroup);
- V% ~# q& k" ~1 V, h9 `( }8 o8 `# @( Q1 R- u; B" k
} catch (Exception e) {
' e) v# ^- ^1 b6 | e.printStackTrace(System.err);0 X( P( s2 G% ^" z% Z
//System.out.println(e);
' j/ O3 G/ x( }" T System.exit(1);
; Y' U: D5 i- B; ]9 m }8 ?; a% c' g' I' A6 C5 y) U+ P
, I* |, G9 Y5 y4 g: T7 d) p
7 {# ~1 l0 X/ Q9 X0 r8 o' }
}
( V# X& a! ?0 \* _% s
" B8 i1 J+ A7 z# g: U private void swarmSetp() {8 v- k4 e8 V9 w' Q6 J' O( C9 q
list.addLast(new Agent(Id));3 e. N( n0 p& n# ^5 B- S, E
Id++;8 g s$ b% x6 f0 J% j
}
. ] n7 B3 N/ V1 O7 R( U" ]6 V/ u/ t$ r6 l6 U" D7 |1 m
public Activity activateIn(Swarm context) {- e5 d8 l& U. r7 R1 |2 x# N
super.activateIn(context);
. o7 ]3 s0 b, C schedule.activateIn(this);- W# A, g0 B1 a, K: \/ L5 ^
return getActivity();
. E4 A/ \1 Q9 t; L! i' G( r }
2 c# z( S8 [/ n/ I8 F3 O) \7 H/ `& w
public static void main(String[] args) { e" `/ q3 L" W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ L" `6 L; |1 F) E N! O0 b( z/ p
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 j, E4 J/ D0 L
swarms.buildObjects();
2 V5 g& A: Q! n0 {6 ] swarms.buildActions();$ X- t* J3 m3 I& m" y- w9 d: P
swarms.activateIn(null).run();
' K0 Q0 @. s4 `; ~$ D }* s6 t9 ]/ u; I& H1 M- S N5 Q1 Y; g
5 t4 D; e. s, e0 |5 }7 [* y( b
} |
|