|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ j& ^* ?4 @3 j
# n* U/ M% Z+ D9 k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ W( ?; ?; i/ b- \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: K; s4 s4 O }1 ]1 D$ C! G" ~
swarm.SignatureNotFoundException; e+ b8 c9 `4 a5 s
at swarm.Selector.<init>(Selector.java:76)
" `& v' R% x( T+ a/ D0 Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 a6 C* w/ R4 M4 Y* G& f8 C
at ActionGroupDemo.main(ActionGroupDemo.java:67)+ D3 F5 Y! o- E0 J
% r) t& V; N% s2 a4 K& C- p4 L
% Z' N# ?% O2 g7 Y) H6 l( e
import swarm.objectbase.SwarmImpl;' o$ d! F- A! _( i( X
import swarm.objectbase.Swarm;
: c+ Y/ g9 z* |import swarm.activity.ScheduleImpl;# M$ O9 T8 {4 \; D
import swarm.activity.Activity;, ^8 V' g) p3 I9 O. u9 E8 Q9 o9 u, y
import swarm.activity.ActionGroupImpl;. A& ]4 s5 @) {7 R2 W% U( x
import swarm.collections.ListImpl;
% D- n( V2 V# N' G& Zimport swarm.defobj.Zone; : w: j$ y9 I& b) o) j7 S% X8 ]: ~
import swarm.Globals;: l4 o1 P' k* P& ~+ ^' M
import swarm.Selector;$ I) T& K# o6 r- I/ h6 @
import swarm.activity.ActionGroup;
6 k/ m4 \+ T/ n1 M0 T, mclass Agent {3 h& U H7 c- |5 I. \
char id;
. n2 c1 F; @ H5 b3 h! D
4 o% O3 m/ e, t3 X Agent(char id) {
" p2 n# E7 G, |. I& I# | this.id = id;: r: ]' {( n m# y2 b
}) T" F3 i' j8 @, l3 h% x
! T) R' U `2 T; G! Z9 Z
public void agentStep() {4 u& l. g; x+ W2 i3 D' K
System.out.println(id + ":" + Globals.env.getCurrentTime());% q% i8 M" c" \1 |2 c
}1 N* P; u' m m5 a
}4 [- l( H4 X9 t( ?
4 \* c, v( l7 }( s! M
public class ActionGroupDemo extends SwarmImpl {
; h* {% m5 t! M9 ?. ] ScheduleImpl schedule;
2 i& R+ V# a& S! |; X ActionGroupImpl actionGroup;
& R0 m& u0 \1 [! ]. I0 E/ _) I3 J; [ ListImpl list;3 q7 s% S2 [ P
char Id = 'a';
$ z! i$ S: G* C# [5 ?
3 \/ [- @% z; M0 l% C& o ActionGroupDemo(Zone aZone) {3 F; F& v9 z) ~' s7 Y a0 Z! L0 K
super(aZone);3 O; b# J# Y/ N5 s7 z+ C" @' X$ s
list = new ListImpl(aZone);
5 h2 C* v% Y6 X4 b8 ]7 Q# G swarmSetp();! Z% | a5 I5 s7 O) i( A
actionGroup = new ActionGroupImpl(aZone);. S+ y0 p8 @5 z8 g2 Q
schedule = new ScheduleImpl(aZone);
! d! J5 N# R, M$ ]" ~ try {
% e4 I! |& s& p3 A6 v4 Z4 k# j Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 s( F V$ J" ]) k& X Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 o: i: v" W" z. D) G
2 J6 ^9 I( y2 F, u' t) Q G
actionGroup.createActionForEach$message(list, agentSel);
U9 K& L) U# v actionGroup.createActionTo$message(this, swarmSel);* h5 T; @0 ?. a b" P
schedule.at$createAction(0, actionGroup);
. T5 e" a9 ]4 t5 ^# \ schedule.at$createAction(1, actionGroup);
, z9 g E, _$ l1 v schedule.at$createAction(2, actionGroup); ~2 ~1 c; |$ O/ \* L1 {2 H) P
/ q# E9 _" Q. \: _( o! O
} catch (Exception e) {, {- d% H {3 c; L% ]6 v
e.printStackTrace(System.err);
4 i7 p3 k6 C' G( A1 j* N //System.out.println(e);6 S% U7 d1 n8 R$ I/ ?3 l8 E9 y
System.exit(1);' ?" d1 X5 Y% D8 A
}; u7 ?0 Z3 ]. a; ]. S- x. F
7 n9 I! y/ O) i; J8 ^4 D3 z: H b
$ o9 B2 d" Q5 @* R" V ?" u }3 j t/ n- \& h
! m* ` x, T& \' h" s private void swarmSetp() {8 ~6 S# S1 L( B
list.addLast(new Agent(Id));
" ? a. j/ r5 f: ^0 I R- ?. _, p Id++;2 d! Q% r9 w) k
}
' F0 y* \% n0 v2 J0 ?8 p1 B6 G
7 G% H, J& z$ @ k, B% \# h$ x- R public Activity activateIn(Swarm context) {
# O- X ~6 T! C1 I+ F, } super.activateIn(context);
; M, D/ @" F% q$ _0 {( O, b2 [ schedule.activateIn(this);
; A: a7 }$ K' q return getActivity();
$ v1 b2 E4 P% X/ T }- S. A- ~; d/ D0 N, W K
7 X7 c& I% x- N0 o
public static void main(String[] args) {
1 U/ i& i# ]/ y0 j Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 Y0 e5 |2 q7 }2 a/ C, f1 I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 q" ?7 f; w( w6 L9 q4 H swarms.buildObjects();
- I9 J% k% _( H. d$ }- X swarms.buildActions();
4 q$ |) w: s3 H2 J* w4 { swarms.activateIn(null).run();
, @; O2 A" [1 Q: D* A }
4 M& ?% B/ [# Q B; t" t, j5 ?5 E
$ j3 H- |& b/ f4 d# I} |
|