|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! N r5 d7 G! G+ t$ k8 Q1 p8 j
# K! u5 P; y, i! [$ S! U* T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! {8 P+ V3 x- t$ K( r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 ~1 i% f8 n% x& @5 D
swarm.SignatureNotFoundException
/ u" F; c! F( d- F) N at swarm.Selector.<init>(Selector.java:76) ~2 v( E8 W) M# Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 r/ Y J' F6 _% _8 V" M9 I6 S( y
at ActionGroupDemo.main(ActionGroupDemo.java:67). n& V8 w! l. m6 P1 O- I* j
" g- f# E- K6 d4 b4 V7 e
6 Y7 t3 \' N3 j) g: C9 V- O _, Yimport swarm.objectbase.SwarmImpl;
% y# w+ }! |& J$ pimport swarm.objectbase.Swarm;
5 J: J7 j" U0 A4 Y: k X& F8 Nimport swarm.activity.ScheduleImpl;
% s3 ~+ X2 q8 l" g9 j9 vimport swarm.activity.Activity;! c2 K2 x, J* U
import swarm.activity.ActionGroupImpl;; H- b l8 h i& N$ B
import swarm.collections.ListImpl;' H* y4 p8 |1 T# g0 O
import swarm.defobj.Zone; " c- @1 Z7 W V
import swarm.Globals;
% x3 B" m4 s7 C3 o+ \6 Pimport swarm.Selector;0 D& d$ i# B% b9 L9 l) d
import swarm.activity.ActionGroup; ) k) r0 ]6 W$ ]" C) b3 H" F
class Agent {4 X( w- W( e0 B# H" v% z9 I
char id;
- g" d3 v/ O( ?. ?
& K, U+ |* w* M: p. t4 z: J& ~ Agent(char id) {
- o/ ]* ^9 M3 ]* l/ M/ ^* r this.id = id;( ~' E/ ^0 b+ h& p
}9 m, P6 t( x: D6 o$ r" D t
! u8 [1 f- F& q/ L public void agentStep() {
7 r* d! h% Q1 i% d2 a System.out.println(id + ":" + Globals.env.getCurrentTime());
e& K% y% i0 z2 G+ s9 K0 E1 s }# }" I# @: W# J, e( n9 U! g# R
}
8 ~% H- w. A9 h! w- f2 m0 y. i; q5 F" B4 z% _' P4 \8 K
public class ActionGroupDemo extends SwarmImpl {
/ K3 ~; Y. B6 \* p ScheduleImpl schedule;
2 v2 ]3 q* P2 `0 } ActionGroupImpl actionGroup;' ]4 l9 V5 \1 `2 x7 c C& r) u7 B
ListImpl list;
% y* n* Z% `+ W3 h1 B char Id = 'a';4 s" H' k3 _# R: D4 D, R' J
@9 f* c/ D/ I+ T: ? ActionGroupDemo(Zone aZone) {
4 Q6 w: L3 q$ T. s( Y' n: i super(aZone);. C1 @& ^, j; k
list = new ListImpl(aZone);
8 [" L; n# k. D6 q' r swarmSetp();
: J- q. v2 t# Y" {' r actionGroup = new ActionGroupImpl(aZone);
5 t! o; x' T2 n" I" Z& N( a4 p schedule = new ScheduleImpl(aZone);
7 f; {% ?* ]! u9 M( [. [; n, ^ try {6 F5 {: S0 Q/ D$ @
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 E; z2 p G9 Y* d" g* n' y1 L3 J; _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 L. [" J, v- {0 l' K6 U* ^. A9 N' S
4 \* C: N! |* V
actionGroup.createActionForEach$message(list, agentSel);
- E+ D6 N1 ]( ^ actionGroup.createActionTo$message(this, swarmSel);
* D7 A- t* Y' | b' Z% g schedule.at$createAction(0, actionGroup);
3 I6 W: f4 L) \- T! W schedule.at$createAction(1, actionGroup);
& A( _/ |% s" B, u" z) z4 F' x schedule.at$createAction(2, actionGroup);& O4 |) H" M$ e- J' v$ S1 ~
5 Y- a8 ]0 j# K } catch (Exception e) {
7 Y0 d2 G2 ~& @7 X N% { e.printStackTrace(System.err);; |$ G+ ?7 y( Q1 [6 ^4 C; H
//System.out.println(e);- B" ]0 P+ @ z! }
System.exit(1);
+ S# Q! k) J% o5 I2 h9 [" n) x5 b0 l }
; u6 k4 d1 k3 q& {6 k7 W6 I$ E6 n1 u. N% \4 c3 y( j0 D' }1 e, b
5 }8 C5 A5 P# n% y/ l+ u1 G0 R
}
/ ~/ x- \4 I' x! ^
& z; u4 t$ @( [$ Y0 p private void swarmSetp() {
7 b3 V* A# g2 J. L list.addLast(new Agent(Id));. @# }5 q6 ^4 i( v2 s1 m/ _# @2 r
Id++;0 E. s M4 Z( ]2 c* @. Z
}
n: ~$ U! o0 c& ]5 y6 X2 W
& O" }* i5 L' t7 B public Activity activateIn(Swarm context) {0 }7 s% M$ I2 Z2 o6 t8 u
super.activateIn(context);
$ o+ Z+ n$ ^! Q7 K6 q schedule.activateIn(this);3 ^7 Z# H: R( \8 n6 L6 d0 D1 M6 @. ~
return getActivity();
7 y7 ]7 a; I( ?* B! t' g& K }. k1 y, a: q' S
5 f' |5 v s( d3 s, O' ` n public static void main(String[] args) {: M! q' l- Z8 ~ @! [% [/ |- z2 D6 g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 `0 o6 l4 N2 s0 Q* q# _& F( E6 x$ Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* d5 I8 z8 O0 A; [' z7 Q8 J swarms.buildObjects();
: I9 x3 S X/ g+ `5 {: P6 O, N swarms.buildActions();
9 M7 O+ c, p/ D' O) W1 A swarms.activateIn(null).run();5 z$ y* o' z( ]) N$ o8 ^3 ~! f2 j7 g
}
+ X5 q0 o' _0 u0 k7 E4 [, O
^, A% }" M/ q} |
|