|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" ^5 A$ S6 y) z$ p' O) z: G: }! h+ m: }3 Q9 y. C4 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% e. g H8 P S7 d9 J: O* w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 d* f* _$ y* k+ }
swarm.SignatureNotFoundException `4 ?* T5 p( [) s( e( q
at swarm.Selector.<init>(Selector.java:76)5 T9 \$ _* o) H q1 n$ \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ e, f4 G& p6 d: v6 C/ G0 @- T at ActionGroupDemo.main(ActionGroupDemo.java:67)6 q+ T ]. h3 F) A+ q2 D
, l2 ]$ h0 ` A: ]7 [/ l! S
' K" V' P D; D. u" U5 g) Timport swarm.objectbase.SwarmImpl;+ s0 A5 |$ h( U) o _( H
import swarm.objectbase.Swarm;
+ K" M V& j6 I% ^9 dimport swarm.activity.ScheduleImpl;
8 t( `$ p# _+ r7 ~; r# j8 oimport swarm.activity.Activity;) \$ S% F( d ^( z8 {7 q
import swarm.activity.ActionGroupImpl;; w1 ^0 L! N; \" z
import swarm.collections.ListImpl;7 U( J5 a" F- j- \2 p
import swarm.defobj.Zone; 2 G* e1 P- X7 u. y+ C4 f
import swarm.Globals;' k, S7 q7 z) X* k; U' o
import swarm.Selector;
( _# N( ?1 K8 gimport swarm.activity.ActionGroup;
4 o' w: ^6 a; c: I/ T9 tclass Agent {
% X* T1 H! w; p: b; O3 D char id;
! J+ Y X: r! Y0 Y
+ x) `6 Z! a( v Agent(char id) {& ^5 B/ |2 B( Z% u8 r4 u
this.id = id;
7 @$ a& z* Y j3 F1 l; a4 p1 m/ T }
5 |2 k, [1 I( x3 g" S4 a$ |5 v5 w* I; D) U9 A
public void agentStep() { y' ` }. E9 N$ B$ k% W" k
System.out.println(id + ":" + Globals.env.getCurrentTime());6 F( i" @* n2 h/ D+ h4 G. ~* R% _4 _
}
* L2 ~- @6 U: Z9 _}% f3 }; ^# a3 \" f' @' ^
s8 W( ^8 i( G/ O) I8 }
public class ActionGroupDemo extends SwarmImpl {. t k; ~. |5 Y4 ?- V4 Z4 ^& x7 Q
ScheduleImpl schedule;
# p8 U6 l- b% M( Y4 |& G" A# Q ActionGroupImpl actionGroup;& @5 R: t/ o0 J& U7 H
ListImpl list;
# O' [' {* A4 z/ l6 j- W: M char Id = 'a';
. R& }2 _ a3 K8 N5 }+ H" S3 a1 \, v2 D1 S* O. b2 A. a
ActionGroupDemo(Zone aZone) {
0 \& z N2 j% ~$ O4 _( F3 ^ super(aZone);
, i8 V9 ` C' k1 V" Q list = new ListImpl(aZone);7 y5 X) D* L7 L) C w2 s2 w) U; l1 p
swarmSetp();9 r4 D4 m, b- B) }; Q0 g+ f
actionGroup = new ActionGroupImpl(aZone);
, g; o9 L& I6 U% u( H; m+ { schedule = new ScheduleImpl(aZone);
`0 \# J' N9 Y X try {
/ I7 c2 F) q! K$ C% F Selector agentSel = new Selector(Agent.class, "agentStep", false);' z5 w3 q, {0 O4 v8 v( s. k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. k" s2 \5 ^4 T( E3 \# t
0 W5 w1 `: F3 m1 _ actionGroup.createActionForEach$message(list, agentSel);. E( u# k+ i4 y& ]) w
actionGroup.createActionTo$message(this, swarmSel);9 s) b" a: p2 Q s/ t: T
schedule.at$createAction(0, actionGroup);$ z) e! e0 {9 F( x- M
schedule.at$createAction(1, actionGroup);
& z) K2 G6 `% ~! u8 S schedule.at$createAction(2, actionGroup);6 d1 M# q4 C% S3 N+ ~3 ~
& C$ w* E# ]% I' n# d+ h5 I } catch (Exception e) {' V. @/ p& v, r. Q K
e.printStackTrace(System.err); T8 ?2 G+ i) J& K& X6 D; S0 W
//System.out.println(e);
3 k+ b+ e: u, u# M System.exit(1);( l4 L' @ R4 f6 }* o
}
3 { c( s5 p- p' I8 _) z5 u9 W6 a7 f! Z8 {
( A% w0 ] \ i; o3 r7 o2 Q }% |; t; q& l: D( @. T
) x1 ~, J1 O! E4 V5 Z private void swarmSetp() {
" M. Z7 M1 M1 _" A$ W list.addLast(new Agent(Id));4 n7 d) R Y: X6 O+ \
Id++;
l J2 I% ]7 _( n- z6 P$ S }
, ]$ o! k- l! F. i/ M5 h V6 S+ Q/ O( h3 {
public Activity activateIn(Swarm context) {
' x$ ^$ a. M* K% I6 y0 m1 M super.activateIn(context);# ^8 |" V; [% G" _5 }( N
schedule.activateIn(this);
! a3 ?9 t1 x3 e return getActivity();1 K% a' @, Q4 k2 Z3 w3 H, a$ q
} k9 k" ~( l, F' [8 `+ \ v, I
+ H" F7 ?% U1 ~# ^- k3 n) K
public static void main(String[] args) {5 A5 ?9 P0 r+ A+ C2 Q! M; q7 W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% L# U$ I) z% z: z" F3 u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 }0 d4 W6 T: E' d. |1 q
swarms.buildObjects();. G+ ]2 u4 Q5 `# [- Z
swarms.buildActions();
2 P L' f* @: N1 X swarms.activateIn(null).run();
8 ` ~( q5 @, r8 _. M, P) N5 D) q# y }( U, ^: f) h: T( k6 w* i9 h
% E+ m5 w* {8 m2 S
} |
|