|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 k) P& I% k, Q2 F, k# k
" x1 \6 b, E/ @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& @* E+ M# c/ ? [7 W/ J+ s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 @3 B) q, ^) i' M' Z( b Q
swarm.SignatureNotFoundException6 i7 Y, V- l; z9 l5 w. S( ?1 |
at swarm.Selector.<init>(Selector.java:76)' @! T" L% P, u9 M
at ActionGroupDemo.<init>(ActionGroupDemo.java:37). h! D& Q: e9 H
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* D! k" ^, b# T5 w
; d o0 @* ]3 M) y0 h& p& f, d W2 e- Y o& r6 U
import swarm.objectbase.SwarmImpl;) ]5 b4 j8 S4 ~& A# x1 i# u
import swarm.objectbase.Swarm;
/ C7 l+ P' e1 b. o7 kimport swarm.activity.ScheduleImpl;
, n$ x1 p* r: Q: q/ F9 Iimport swarm.activity.Activity;
! c* j0 R! t+ s3 k p' j* C, ^5 `6 `import swarm.activity.ActionGroupImpl;
6 i! |1 m t0 Simport swarm.collections.ListImpl;
: W4 i7 e( G7 C$ u; J% O- rimport swarm.defobj.Zone; & v# X5 Z5 }4 ]' k& Z: J! v, R
import swarm.Globals;0 o/ a1 T' i+ g. u# O
import swarm.Selector;) E7 `. U0 i# S9 X7 ~- f$ i
import swarm.activity.ActionGroup;
) N2 W. f2 @* }& v, B2 @( [class Agent {
' M% q/ I, ^; g$ T5 F. m char id;
X3 }9 u, {. r! ^& @
; q& }1 P# c: U7 ^* Q; m Agent(char id) {& F1 _2 z+ [. u* D
this.id = id;( T" Z+ m; {6 d! U2 V; }0 m
}6 ?2 |& a+ @) K: p
" f0 g7 a$ y/ `; b6 D6 Z
public void agentStep() {6 v' b$ W2 A: C1 [- ~9 l i( T
System.out.println(id + ":" + Globals.env.getCurrentTime());
" j( q5 y- f0 f- a" f& _1 H" D }; P# f4 d2 n2 T7 s1 n5 j
}
+ f2 {% j2 g) _/ [5 k, q
4 L! u! v* J7 t' V; ipublic class ActionGroupDemo extends SwarmImpl {. a( m7 b. A5 X
ScheduleImpl schedule;$ y m! @; w8 o6 b9 \# n
ActionGroupImpl actionGroup;
; I( ]1 R8 Q+ K8 }+ E6 A ListImpl list;
- G$ N8 m% \/ f0 X char Id = 'a';
) h0 `' f+ F7 R. W4 [9 ^- y$ R. C% W5 \2 o$ A. j
ActionGroupDemo(Zone aZone) {( A7 g% B7 j6 D3 {! H X# }
super(aZone);
2 H$ u3 b& w& Y" x" y. K9 P; D" q" T4 R list = new ListImpl(aZone);" ~6 L$ y5 \, N w/ w" T4 ^* l6 t
swarmSetp();
6 l7 `+ H& O& `& ~& t& Q4 W q, C actionGroup = new ActionGroupImpl(aZone);
. M, i/ G* @9 y( A9 G schedule = new ScheduleImpl(aZone);7 F$ g: Y. a7 E# }
try {
+ ^) o7 w. J; [8 l1 i+ I# ` Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 l& f3 V, v* V5 X) ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) |( J% n# o( ], n: o8 }& C! t. O
3 f# }- U% E2 \+ o9 q actionGroup.createActionForEach$message(list, agentSel); C: t" o/ Q7 R$ U9 r
actionGroup.createActionTo$message(this, swarmSel);1 T$ o4 q: C8 _% a
schedule.at$createAction(0, actionGroup);
+ x# t- ?3 J3 p4 U5 ?& u( {/ d schedule.at$createAction(1, actionGroup);# f, Z+ A/ y- Q9 C# F8 O& w7 y0 U
schedule.at$createAction(2, actionGroup);. V( A4 Y' A. w! h2 W1 G
+ i( e: H+ s5 V* t$ Y, Z8 G+ V2 u& C } catch (Exception e) {
0 o1 h' C" g F" @: c0 `0 y7 p e.printStackTrace(System.err);
9 F$ a0 ^0 D$ x //System.out.println(e); ]0 L- K2 ~% C& F3 y; I9 W0 R
System.exit(1);6 v8 l: j7 v) z. y
}
- [# p) N# s: V( r4 G' o! ]0 \7 C
) C2 ^3 x6 c4 T8 d# g+ ~. j3 f- Q7 g5 t1 G' ]
}: U1 R, N" |; e( H. g% Q( O
1 e- X7 _, n2 D, M* ] private void swarmSetp() {3 ^3 c2 y6 N3 @* V( Q' S9 J
list.addLast(new Agent(Id));+ q& R9 j4 b/ V. j% J
Id++; a4 c- g2 i# B- p2 e7 [7 |
}2 {% L# }' o6 k8 u) C
7 `& {2 u7 z9 e# c i% N2 p( r& o, e public Activity activateIn(Swarm context) {
; e4 S' f& ^/ _5 g& R: w2 [ super.activateIn(context);. V; A& O$ `' U8 w' h, i
schedule.activateIn(this);/ y- Y5 Y) Q( ?; L. d3 u# n
return getActivity();
" n4 O! G# d8 g% B9 V }
% n! A& S: f9 H4 r
" ?6 b; P9 Q* M7 {9 P3 p n* _4 m public static void main(String[] args) {7 _3 C* ?' r+ M l4 L @/ L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& o/ t( W* l3 l1 y% z Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 T- `3 X7 |% j; N9 F U5 v swarms.buildObjects();$ X _( B9 B2 Z: D" J: E" Z$ u
swarms.buildActions();0 e+ Y! T ]: f1 f' m. _& f! Q( J
swarms.activateIn(null).run();
+ Y4 l! [1 Y l- o5 e% k3 c }
. O) x/ ^# H; O5 [, e% H( Q( ~! m6 `" ?8 P6 a* x$ s
} |
|