|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- M, r) Z% j @% k/ m c( I, L
; e9 N8 L( \$ }$ ~5 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 a" C$ Y+ E* Z$ q& V5 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- q; _ [. M; g9 s6 o. k+ l: m9 F
swarm.SignatureNotFoundException
: Z3 G* H6 Q6 l7 i* H at swarm.Selector.<init>(Selector.java:76)
% ~* Z, ~5 B6 q, I" M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 Q% h$ Q: Y/ g% B8 F! ^, _ at ActionGroupDemo.main(ActionGroupDemo.java:67)6 h- ` F# W8 x& {; J( {
7 Y9 Y8 O2 v' b: T* H3 m6 ]- j" `$ P/ `; y- y% ^/ O' `8 }% V
import swarm.objectbase.SwarmImpl;! O+ a2 q& ^7 v* M4 d
import swarm.objectbase.Swarm;# ]) P- \9 o2 _5 q
import swarm.activity.ScheduleImpl;
) U. T$ O1 u% x* ?import swarm.activity.Activity;
2 D* T1 T& l9 T+ d1 Mimport swarm.activity.ActionGroupImpl;
7 ?4 w* s+ {% e" I) J( n8 k E% Pimport swarm.collections.ListImpl;3 l8 Y6 x# e* q: R3 i/ {, W, B, p
import swarm.defobj.Zone; . C, l! J: H0 h. h3 F7 k0 U( i
import swarm.Globals;
K, D0 H) K9 ?. y+ [import swarm.Selector;
- _) E8 [6 B/ J: m! \3 Vimport swarm.activity.ActionGroup;
. O! c2 i: e4 j' nclass Agent {: n% h% f' G8 Q4 K6 q! y
char id;& Q1 o) K- c2 S3 ^9 j
@+ I! N6 F( U7 P* P | Agent(char id) {& @/ r8 S( v m( @: R3 R
this.id = id;
7 h% ^9 @8 }" g5 j }
0 S$ K8 ~: S7 f1 F' l
3 N8 K% H: H+ y8 u0 Y$ t o public void agentStep() {* a; T/ S7 A k/ i3 a
System.out.println(id + ":" + Globals.env.getCurrentTime());
% q0 I4 a4 w7 s: x- @6 J# C! w }
' ~* x/ e# F8 e( r5 l" F} a# g$ j/ H- p- |$ V* E5 m
7 v/ S! c9 |( D2 `& z2 u5 {
public class ActionGroupDemo extends SwarmImpl {
' h# X) f6 C0 c ScheduleImpl schedule;7 L7 P0 w. y7 [# d; O/ E
ActionGroupImpl actionGroup;% t2 V/ s1 M, `6 Q
ListImpl list;
2 L+ g8 D0 C. T4 t' p$ M char Id = 'a';5 o' D8 {. a* h5 r
3 X3 L4 k, z5 `2 q& _6 ^8 T& g. E
ActionGroupDemo(Zone aZone) {+ m9 u _6 G2 k
super(aZone);" B5 U, p0 G; W2 t# ?, U% h
list = new ListImpl(aZone);; P4 v: O2 [, @: i7 o
swarmSetp();+ f. F4 O" f0 M* d7 y* C8 [3 }* W
actionGroup = new ActionGroupImpl(aZone);6 f; ^7 [2 i m
schedule = new ScheduleImpl(aZone);
% c1 O) R1 v% k9 N/ r. s1 g try {
5 ?9 r2 n( K' y* q Selector agentSel = new Selector(Agent.class, "agentStep", false);6 u6 P+ G. {; C0 S+ n5 h
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 g* K8 _* j+ R- m8 }4 p
9 x- [6 H E/ v9 B
actionGroup.createActionForEach$message(list, agentSel);$ D s( \1 Z% q( i- O
actionGroup.createActionTo$message(this, swarmSel);- J# L: n$ q/ Q
schedule.at$createAction(0, actionGroup);; {5 C4 T7 M0 m8 L8 @, g6 J6 i" ~
schedule.at$createAction(1, actionGroup);
( c! l- V+ \' J6 x5 O8 } schedule.at$createAction(2, actionGroup);+ \0 ~1 q% w+ o1 o
% X% i) \8 u# f( Z* s$ b
} catch (Exception e) {$ W* c/ ?+ o! k( c; L Y
e.printStackTrace(System.err);' x: S0 k' Z% A0 r* l
//System.out.println(e);: b. _+ I3 x4 z9 r3 j. K
System.exit(1);3 B8 _9 s+ W$ A) R+ \+ y
}
( C3 \) N4 ~ n6 y: a. O& x% Z) Y! Q0 s/ V
2 P* H8 p0 [% u' X& Y
}
T4 `0 l* O3 b: f9 @1 g# M
$ Z( D$ I7 e: c private void swarmSetp() {
- j6 Z/ L( s5 d& K* r list.addLast(new Agent(Id));
H% @8 W M* E6 b5 J, }' N$ B& p Id++;
+ K9 \1 y# j/ o, j* l. G( ~ }
3 b5 i6 l3 G8 V9 w/ K$ s- C$ \# ^& D4 L+ N) X
public Activity activateIn(Swarm context) {# f4 r6 `! Y' H9 [
super.activateIn(context);
1 G$ L! ?' L2 Q7 W( ` schedule.activateIn(this);' u$ P8 i- |3 l" |# p$ {# o1 d% ^8 j
return getActivity();
/ i0 C& i* }( _0 }$ x }; h( d2 t# Y1 ? v. k1 R0 J5 }
6 T9 T3 i2 G* f public static void main(String[] args) {
( x7 W2 Q* c: S+ _& X Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% q) N6 y0 m% w0 s
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 s) Y) v8 v( M* ]$ H swarms.buildObjects();
2 l3 `$ A& y2 d2 W1 }! { swarms.buildActions(); V/ X7 o$ a: v$ |3 c; D4 y" T
swarms.activateIn(null).run();
: w. G+ N8 o6 q s) T: ? }3 Y; x& u, x2 C5 M
! f3 B8 j k) s3 @$ G} |
|