|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( D _% I* l3 V5 m$ L. {9 ~, R# ~* w$ o$ [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 c8 V6 C/ j# z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( R* @0 Q& ^4 P- q$ c' G; kswarm.SignatureNotFoundException. m# F: w% z& j' z( T
at swarm.Selector.<init>(Selector.java:76), A$ @. d W& i A2 s: y0 J
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), _( u, N$ t- v% H
at ActionGroupDemo.main(ActionGroupDemo.java:67)( T8 a: f3 m7 F. f
0 C5 A$ y( h* `3 `3 b8 P0 Y
) ?( L1 x: U0 h% G7 q6 u
import swarm.objectbase.SwarmImpl;
; P3 ^+ V! W: }0 J, H" Zimport swarm.objectbase.Swarm;0 \, ^8 X$ S9 } O3 _8 B
import swarm.activity.ScheduleImpl;, p& S' L# K" A- Q _2 l
import swarm.activity.Activity;7 y9 y- r9 }- _# T; S k
import swarm.activity.ActionGroupImpl;
! w& Q* `; p* i! uimport swarm.collections.ListImpl;+ o) y- a, v3 a3 E6 ?3 G
import swarm.defobj.Zone;
, q6 p4 E: j. Timport swarm.Globals;! x0 U. s+ F+ V+ {3 S9 C
import swarm.Selector;
: Y0 c% N, K3 ~ u6 ]- limport swarm.activity.ActionGroup;
7 k2 `9 {8 I+ w' \0 I- Z! V9 B/ _class Agent {( Z5 O, n+ G3 t' x; v5 M" a: T
char id;! b, D5 @8 \0 Z& M
* T! N' F) v& L$ c
Agent(char id) {
; K/ F' e1 ~" ]# H1 I' d this.id = id;$ m9 |6 T9 A. B) _
}5 G) d' i( Y1 h) E
2 N$ O6 E T2 u* c1 D public void agentStep() {* n* K, P8 Z' u& O" w% l7 g6 _
System.out.println(id + ":" + Globals.env.getCurrentTime());- y8 B. q: J& A7 F- M8 p
}5 C# s, {: m+ y h! k6 J
}/ `) G, Q! \4 l- F4 r* \
4 A) u0 Q' c5 D8 k1 ipublic class ActionGroupDemo extends SwarmImpl {
5 O. d# U* }% `/ j- O. J9 u ScheduleImpl schedule;
6 p$ w- n/ a6 v ActionGroupImpl actionGroup;
9 E7 L) R9 n, [ ListImpl list;
8 a9 W4 Z! @3 R7 y% H char Id = 'a';
, m& R5 o8 W( W- Z2 c* E x# _
" Q$ C/ v$ }% k: v' D# x2 E0 i1 X ActionGroupDemo(Zone aZone) {& S5 b3 _2 i7 s2 r
super(aZone);5 T- o5 g: J1 X6 R0 }8 I9 x! l
list = new ListImpl(aZone);# V: j5 b7 y% I, F7 Q
swarmSetp();+ d( I0 f& V" J' k+ Z3 f
actionGroup = new ActionGroupImpl(aZone);
/ C6 I L' {4 O4 K2 \ schedule = new ScheduleImpl(aZone);
+ ?$ ]4 W+ d6 O% z- U try {
2 N; |2 C2 c0 s+ J Selector agentSel = new Selector(Agent.class, "agentStep", false);
( g9 x$ r( `1 j, h2 p9 F Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 j7 {; W% D$ i4 h( `
( o( D7 j# P3 K% V actionGroup.createActionForEach$message(list, agentSel);
2 V0 C8 t" ]) b9 t actionGroup.createActionTo$message(this, swarmSel);& m$ z% d8 s( b; H3 V
schedule.at$createAction(0, actionGroup);
* C, y7 Z( R. l2 m) b5 I. Z schedule.at$createAction(1, actionGroup);' Y+ n7 F$ ?6 @$ P* W* r
schedule.at$createAction(2, actionGroup);
! B: L* G( l F+ n# I/ E6 ?9 J" ]# t8 J7 b
} catch (Exception e) {
5 q+ U; E3 ^% M9 y+ I e.printStackTrace(System.err);
. Q" ]- g0 q8 F" ?+ [ \& e //System.out.println(e);
U1 Y9 ?6 M6 e( W System.exit(1);; m& Y, P4 k" x( E" S0 N( ]3 {
}
: j, O+ P3 D& W" z Z ?7 a; p- v8 x5 F% k( i8 k* U0 ^
* k; T3 y; N2 U/ _$ o. x }
' r$ a& ?' d( p) I5 o/ t. w" p( G8 Y
; c, f9 | s2 }7 P' b private void swarmSetp() {9 x5 m: M! {( a
list.addLast(new Agent(Id));/ a4 T* I8 w# J9 K1 E ]" h
Id++;$ g! L! |6 V+ h7 B( i
}5 s% F3 Y/ l6 T
3 d" \6 w) N7 ?! b
public Activity activateIn(Swarm context) {1 i$ D, Q0 K7 w' F7 T* j
super.activateIn(context);
0 j* W$ p5 t3 ~( z3 j schedule.activateIn(this);) J' J1 ?) A7 q5 }' }
return getActivity();; P* Z7 c$ |: P* i+ t1 } x- b+ E. O
}- n( W- ?7 h/ y2 O" N
1 m( l& S3 c' s public static void main(String[] args) {$ V- Z' H: k2 ?* y Y7 |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; x. H4 V! S- o# e+ {! Q0 w/ U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 p- i" ^& z) e' C& \, C# c
swarms.buildObjects();
9 G) L) k* P1 @, K; V% t8 u swarms.buildActions();' q" G0 i# L$ C
swarms.activateIn(null).run();' _% n/ T% g. V" |! e( o" ?
}6 d- }2 h- ]" f, W; j6 Y
+ P& {- W8 {. C, H7 K
} |
|