|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 r% u. `/ _ k5 }
2 l& `2 E' A+ }0 `) w; K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& U* X7 t1 \/ p& y. ^9 O& d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 |2 c6 w% ^! c @0 i1 C5 N
swarm.SignatureNotFoundException
$ X1 o& |8 N# _% c- E at swarm.Selector.<init>(Selector.java:76)" F t- L8 B' l( o7 ~% ~
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% `2 n8 a% }0 j% \4 D& A at ActionGroupDemo.main(ActionGroupDemo.java:67)) H9 E) S C. [) P- B& w
( \) D$ t- _# t/ z+ o+ M; S' s
: Z7 t4 a& `* |/ u
import swarm.objectbase.SwarmImpl;
. }* j# l, b0 R& limport swarm.objectbase.Swarm;
9 s3 O9 v, r4 Z Jimport swarm.activity.ScheduleImpl; n+ S+ `" x' L
import swarm.activity.Activity;9 m; i+ X5 K2 r3 N0 F& u
import swarm.activity.ActionGroupImpl;
4 Y" U3 Y+ T3 y# {& Uimport swarm.collections.ListImpl;
9 r* k6 {; `4 P8 |import swarm.defobj.Zone;
9 V$ M5 L; d0 T6 E+ N) c; @- i8 Y9 \import swarm.Globals;
/ v% h6 e$ G$ O X9 S$ _2 Zimport swarm.Selector;
% O/ v2 V5 r I5 v4 V4 ]import swarm.activity.ActionGroup; 2 n) ?2 D3 s" T8 ~: G/ C5 g
class Agent {$ a$ C; p9 Z7 y
char id;
- T. G8 V( `7 S8 M1 Q k5 A: V j
Agent(char id) {6 |$ m+ e8 t" _8 ^' n B; Y
this.id = id;1 D6 K3 q+ e: J
}+ L- G( {: t; b: p! v% C" P n' A" e1 _) A
2 N4 E# A' E% Y public void agentStep() {
. x* Y$ J# |* w System.out.println(id + ":" + Globals.env.getCurrentTime());
% m/ D1 j5 }8 W: y$ [' U9 ^ }! U: h8 i+ i1 W( t2 `" i0 J" V
}
! c/ M/ F0 ]8 i$ b$ M+ n7 \" u, O! z5 r- U8 |8 A5 P
public class ActionGroupDemo extends SwarmImpl {) b6 v1 C" Y$ W
ScheduleImpl schedule; P7 l7 s8 Y% k) ~; z# ]
ActionGroupImpl actionGroup;
! Q M" p6 f9 { `2 I% J* Y ListImpl list;
6 ]9 h; [$ E& V$ m9 g% `: U/ U- o5 x char Id = 'a';7 N& d2 g5 r, y" A2 K& P8 {$ y
6 {) Y0 }0 w9 `2 q4 _. D* X ActionGroupDemo(Zone aZone) {5 r7 A, P0 J7 A- J. g X6 n
super(aZone);
; I/ p5 @1 A+ K4 r3 x4 B' {6 e list = new ListImpl(aZone);
1 O9 l' Y: z2 }& K: ~8 w swarmSetp();
+ n/ q5 ~) G) w0 _ actionGroup = new ActionGroupImpl(aZone);
7 X6 ] [% O& J schedule = new ScheduleImpl(aZone);6 @# P; ` y6 o" T/ [# X* R! n9 `
try {1 A% d3 ]: v: `4 }: u8 Y! \
Selector agentSel = new Selector(Agent.class, "agentStep", false);* R! }: \( m: U/ v* @9 _- ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 ] k5 d; M9 c4 u# \, @
+ r# U: Q0 t' z* _3 v9 q0 t' |& o actionGroup.createActionForEach$message(list, agentSel); m5 l3 {8 F# M! j4 a( q
actionGroup.createActionTo$message(this, swarmSel);
1 C" U' y, q2 {6 Q: y" Z schedule.at$createAction(0, actionGroup);
6 ]4 a0 l- k- T& ]* s schedule.at$createAction(1, actionGroup);5 \. Q; s. U5 ?# u
schedule.at$createAction(2, actionGroup);
' S* k4 r- U( y5 ^ E$ j
j3 y) u, E: O H( R* Q7 O% n( S } catch (Exception e) {6 D0 d9 m4 Q& Z+ {: U* V3 O
e.printStackTrace(System.err);
$ Z y9 I: l4 L& M; b v //System.out.println(e);2 Z R4 [) o1 z* ?( B6 c' ?
System.exit(1);4 d1 t* L7 d8 y/ J: u; y' s
}
! j' F2 E5 r0 O5 ^ M' D7 v# e, x; f( b; ] {1 Z1 J/ h
" e. ]- O' u- y2 f
}; e* @# R9 E/ }' S" [' T) [: \/ C
* j6 ^* G) n$ M! b2 \. ?0 V private void swarmSetp() {
0 t0 P7 n- R. Z# z0 L6 ^ list.addLast(new Agent(Id));7 `- T! L2 G% H2 h5 W- n. u, }
Id++;
6 q% ^5 x# o" s: K4 y+ C1 d8 K }$ S3 y9 D& W' y( b" W, T/ T
- W- ?+ A7 b1 h1 `6 \% y
public Activity activateIn(Swarm context) {8 B) T# @0 O* R% p$ U
super.activateIn(context);/ R4 R5 c1 z1 d4 S7 z) r) M% S/ N# \
schedule.activateIn(this);
; N9 Z S. X" s, d7 e return getActivity();3 W8 o, O/ T6 b- H* O: \# {+ c! K
}
. B( v& H1 \1 \# I2 a
/ C* x3 I. e& D' A A, G' l: q public static void main(String[] args) {
. t/ B# k0 g! G+ a: g7 T9 T Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; G, V2 I3 y/ T8 l4 i Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, @6 y) d" C7 B8 s0 W$ k# j swarms.buildObjects();
9 a+ d5 r( E" L ^& B. r7 r5 p swarms.buildActions();
6 u% L2 l, w; \4 ~7 Z: I- c swarms.activateIn(null).run();
' f6 X" }; s9 L }, O: m; M: f9 h+ f# C
0 X1 n% z) }! l+ \) }0 F, j* j2 h
} |
|