|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; ? ?9 U( m/ C; U: P: b5 ~; t; S& q1 o7 N0 [) M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 ?" j% f( C8 ?% y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- ~2 F; b8 V7 i r- qswarm.SignatureNotFoundException
7 X* o; K( M; c% I at swarm.Selector.<init>(Selector.java:76). r8 z# i: M' a7 h" r! u8 }% z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 I# j( E" C( @5 i! v' K at ActionGroupDemo.main(ActionGroupDemo.java:67)6 \6 h2 W0 |! q9 U+ w* D7 y" g; h, m
; E1 }0 S; G* w; Q9 I
6 I D2 U b3 X6 [* M" g+ gimport swarm.objectbase.SwarmImpl;* v1 y% {, i6 y! }: Y5 g: `5 n
import swarm.objectbase.Swarm;
7 j8 i0 @( ?3 G6 Cimport swarm.activity.ScheduleImpl;$ Y& w \- m0 l* _+ y- {( k0 q& [
import swarm.activity.Activity;! J* R1 q6 x) [" Q$ i7 L/ ~
import swarm.activity.ActionGroupImpl;( B' H s* x8 T3 p9 J9 G
import swarm.collections.ListImpl;
5 F2 Z( A t3 x) s& [import swarm.defobj.Zone;
9 X5 o2 U8 r5 `1 R3 M, t7 mimport swarm.Globals;
/ @& r! @0 }! c( D Z- P/ b `import swarm.Selector;8 Y3 D2 f" \* X1 `: S
import swarm.activity.ActionGroup; % t1 s' N& [( `, K0 }
class Agent {" z& s: a/ T, v/ |- X- N) m
char id;
7 m4 T6 I9 H- Z* `( J; Z
5 Z( M. \$ U D: {+ t8 m* v Agent(char id) {
3 C6 p* ?' c, X: G+ F this.id = id;6 g2 N& Q9 ?3 C X
}
+ j: x% @& R* P7 F2 x
6 h4 c- V, H y public void agentStep() {
7 ]* ~3 b) G+ f% A. ^ i1 B7 z System.out.println(id + ":" + Globals.env.getCurrentTime());
" W# H- A+ L$ n" r" ^6 _+ }# ^2 d }
9 J& x6 y5 f% b' b}7 L7 G: w7 o) s w, Q+ I
R$ g, K4 f: K' Y6 R+ p1 Tpublic class ActionGroupDemo extends SwarmImpl {
9 s& e8 h% \9 h Q ScheduleImpl schedule;
6 Q! X9 v: V3 ]2 U4 D ActionGroupImpl actionGroup;
$ i& Z( A, m' i! ] ListImpl list;
/ c g- v) \3 { char Id = 'a';3 L8 c4 b/ a% o8 Y; s
% w6 N# m4 x/ m* ^( {) P8 Z ActionGroupDemo(Zone aZone) {6 N8 W7 a4 j6 v# H1 Z2 u- B
super(aZone);5 |) N( [' \6 G6 P9 w3 s9 |+ f
list = new ListImpl(aZone);/ v% a9 ~7 S/ M6 N( u+ f; f5 x
swarmSetp();
7 i2 k: L2 c! |% e7 k actionGroup = new ActionGroupImpl(aZone);! Z* z7 K# s5 Z) L- K
schedule = new ScheduleImpl(aZone);
k' J' Z( X1 x) X try {- T8 _1 T% y1 y' S, j
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 n$ |5 e; D; c' J
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# y) j0 b! {) A/ }8 y - u" i5 H5 Q! J6 s4 J
actionGroup.createActionForEach$message(list, agentSel);
, B/ r0 X4 \ {6 p: r actionGroup.createActionTo$message(this, swarmSel);
: b6 |5 t" R' t7 d+ m6 P) T schedule.at$createAction(0, actionGroup);! q3 B7 L* T8 ?6 c' w$ M& c* C+ O
schedule.at$createAction(1, actionGroup);
# @! q+ T' P$ T schedule.at$createAction(2, actionGroup);7 P; t3 ]& K- l' I2 _
) R( v6 ^/ Y- s9 Q N, j
} catch (Exception e) {3 o' v) M( L9 U) c& m6 t! ]9 n
e.printStackTrace(System.err);4 k1 x% Q! Y9 e8 ?/ H
//System.out.println(e);
$ e+ t- M) a% a: k1 P: z' g/ ~ System.exit(1);
1 P9 V2 T" P5 ~+ z }
' t i7 H) d) w2 ~0 e$ T6 g5 F
7 [; }- a L6 ^# A$ H: @( |7 q) V
5 y3 U3 F* Y2 \7 x& T2 l }
9 O! f% G+ h; I4 X
. h& [$ W5 p4 b& ~$ {6 \ private void swarmSetp() {
2 A1 b( V W$ }, o+ b: q list.addLast(new Agent(Id));! x, `/ O# k# o' r/ x( l
Id++;
0 C/ F/ O8 n2 D7 ] }7 J0 A' j6 i1 ^" T0 h! L! J$ E
& ?) T0 w+ y9 P& P" a3 k public Activity activateIn(Swarm context) {$ }& Y8 g3 _( J5 h' b
super.activateIn(context);# Y; P/ H% X: T% G. p; |
schedule.activateIn(this);
4 V* X6 B0 |+ ` return getActivity();" }7 d, R, |1 b9 V' p: q; G; T
}
5 Y& P/ `/ \0 o2 }# i! Y& L; m& j z9 U1 _2 }) {1 {
public static void main(String[] args) {
4 t1 F' L: G2 a* } Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ Z. `0 C. @+ J7 z% j3 \6 z& ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, B* t" d. ^* {; N7 y9 V swarms.buildObjects();
' @9 C8 c' Z* A swarms.buildActions();
: r( W( {6 e8 N swarms.activateIn(null).run();
4 {$ e# e) X3 _2 Z) D; N5 r& q: z" s5 N }
/ ~6 p/ c3 P) c; Z1 O4 T9 I; [! d* `: C5 R2 D; }2 [$ h1 ^# W
} |
|