|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) t* i, ?+ l6 w- X1 t p, r
3 _! d. J2 J3 m* Z1 K5 ?4 B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 ^8 l/ Y: m) {, v, R$ I0 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' m2 I4 F4 O& i- Q
swarm.SignatureNotFoundException
+ U% ~: _" A K2 S& s( a6 c+ E at swarm.Selector.<init>(Selector.java:76)
* Y) W, H- V! U! `% l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& h6 I; F% z4 {0 j
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 d9 Q& T4 W$ B* o. D7 f/ q
6 v3 x; h3 S; p/ g0 {/ p1 r T7 R! f) z4 C8 x! Y* V
import swarm.objectbase.SwarmImpl;0 N5 F8 M6 f# m" d
import swarm.objectbase.Swarm;
5 L0 y5 J+ a9 X7 Wimport swarm.activity.ScheduleImpl;
; T7 F& v: C( l+ y! Q6 _* D# K+ r3 Uimport swarm.activity.Activity;
1 y5 ^1 G! Q( |* q4 u4 H7 qimport swarm.activity.ActionGroupImpl;
* [( T" g: q. t( \6 q2 a+ {1 iimport swarm.collections.ListImpl;
. y% E0 y0 b: y4 b5 Bimport swarm.defobj.Zone;
( H% |6 j: j9 S: j2 W* @# ^import swarm.Globals;* q) Z4 I' N3 R& U8 @" J6 L
import swarm.Selector;, f, U1 [6 }) t1 C2 q
import swarm.activity.ActionGroup; & K n. o7 K. M5 _, Y' j
class Agent {5 k' g6 T& u- W' y/ w F6 t5 J
char id;7 @7 H2 \* g3 C( G8 {1 n3 I z
$ L: s- j* H- e! j3 @' T9 K
Agent(char id) {' t% Y- u" Z4 ^' z: r
this.id = id;
) P& f6 X% w; b; G }; L8 a- X( ~; R4 ^5 j. B
7 r0 [ s# o, U5 r
public void agentStep() {8 K- Z) @- \' ~* W/ V
System.out.println(id + ":" + Globals.env.getCurrentTime());) L2 h4 }# n1 O1 v, H
}
6 S }& A; g9 }; f" s) {* K# U}5 n" g# ~# B: P# N) \! P
' Q0 n% A$ g: s+ q M3 W+ R& ?
public class ActionGroupDemo extends SwarmImpl {
0 M4 f5 r$ I' ~3 o% z3 S, z, Q ScheduleImpl schedule;8 `% ~ @) m7 e" p
ActionGroupImpl actionGroup;3 {' O! k& @* M3 I. A7 ?; A
ListImpl list;$ \, w1 D: \, [/ l- U0 G5 e1 O
char Id = 'a';
0 u5 z( f( i& c7 j% u: H( M& S! {
$ ~0 f# o' r. s& ` ActionGroupDemo(Zone aZone) {
7 |3 w, y% |0 H/ H super(aZone);
( b/ f+ ]6 x( ~* y1 \ list = new ListImpl(aZone);
, i+ z9 j$ Q' _ swarmSetp();
) T8 }! Q% z `! Y$ @ actionGroup = new ActionGroupImpl(aZone);
! g- `6 g6 \- D! z) n schedule = new ScheduleImpl(aZone);
8 h$ R* X; N& H5 U) c try {
& r) P" x! \# R- x3 r: i Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 R. G' d7 o/ Y! F& K( q* A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# I7 T$ a& y4 ^
9 k8 l# u& `2 i- j' Y" N! C actionGroup.createActionForEach$message(list, agentSel);
0 f5 l9 K; {. ^ actionGroup.createActionTo$message(this, swarmSel);1 c1 D. f1 x8 G0 X* ? Q4 N6 ?
schedule.at$createAction(0, actionGroup);0 T6 z' o9 o: v3 i3 v
schedule.at$createAction(1, actionGroup);
* B) d7 @5 Z: ~$ n; L2 o) N5 c* p: u schedule.at$createAction(2, actionGroup);7 f9 \7 b% d. @ s3 E. w3 Y
, U2 H( {- R5 J9 i
} catch (Exception e) {
* u4 f" ?% g. y% N2 P e.printStackTrace(System.err);7 H9 y# d% j- h# D4 i" g% P, N6 p
//System.out.println(e);
1 S1 A' L' @7 F3 A System.exit(1);) H7 G# B3 s8 R0 S" G8 Z: u
}
3 j7 l" a8 K) C1 v/ u% H d% @, C6 C% U* M3 b
5 H" O( s3 w; g. J0 y! s$ T( r }
; d) e/ M6 l- A' L) E, }& b, r* I I/ g1 ~/ S3 @
private void swarmSetp() {
( g6 `0 c8 k/ x list.addLast(new Agent(Id));( h6 a8 u& V7 i5 Q/ V
Id++;
! S5 v2 a9 y5 K+ C }3 x; Y/ o( Q: @
& _4 T! [" D. E; B
public Activity activateIn(Swarm context) {
) N) |7 l. @5 u( O+ y4 J. K0 L super.activateIn(context);* d: E. O% H" h8 E i' S
schedule.activateIn(this);9 N9 b2 l; Q5 e1 @( \# B
return getActivity();# D0 n$ C3 F* g9 I, u1 E
}
6 m ]3 Z8 V6 M8 S$ n- a2 ^/ m2 T+ v4 k; m8 m
public static void main(String[] args) {
& Z1 E5 |3 A" ? Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 S; Y9 D* h6 b
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 K, a; \( j T( s7 L
swarms.buildObjects();. B( y& p, D) Q" U; _0 E
swarms.buildActions();
+ r X- p, \5 l2 @# P2 q swarms.activateIn(null).run();* m- I9 ]0 Q- T! \& v2 Z
}
. A, P/ l, A8 W8 L6 m
/ ~6 I K; |9 Z} |
|