|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % B" Z" Q) m7 w) j
5 l \3 e/ w! i% m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 q4 m3 [. S0 }& X" z$ _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 F; L8 _; f" w# Vswarm.SignatureNotFoundException
* D4 e3 X( u5 P/ F1 @7 d at swarm.Selector.<init>(Selector.java:76)4 b6 N+ q, H$ j/ M5 p# U
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) h( l* e1 s( w& r at ActionGroupDemo.main(ActionGroupDemo.java:67)
* M0 Z" M' `" i$ C' g' h1 D3 c
( g2 U: W9 O4 s: R8 Y3 N* r' {" b2 a0 }; p8 D8 j' ^
import swarm.objectbase.SwarmImpl;- Q8 l2 ]/ a2 {
import swarm.objectbase.Swarm;
! X. o4 }! N5 Z7 s c$ R. oimport swarm.activity.ScheduleImpl;
. J y# U7 W4 m& p5 kimport swarm.activity.Activity;0 L" ~0 r0 O% F
import swarm.activity.ActionGroupImpl;
( L3 W$ p* j/ Cimport swarm.collections.ListImpl;
% q' K! i. i: w7 J+ B, ~1 W. Mimport swarm.defobj.Zone; 4 U% a! A' p8 P4 B( |0 R: }% l
import swarm.Globals;
% _# T% r d8 W4 gimport swarm.Selector;
" O$ ^6 n+ @8 Y8 Gimport swarm.activity.ActionGroup;
) K+ Z$ |' m4 {9 |8 h; n1 \class Agent {
. W4 z. M! @' M M0 Q char id;! m+ o' l) j, g& D: ^ M0 b
% r* n4 A- R4 X, d Agent(char id) {; b, A" @+ _2 d8 v% b% a9 i
this.id = id;% c! }8 q3 m% Q* v# C* [
}2 R0 W+ f0 w' C7 L1 b
: h9 ^% P5 X1 j" h
public void agentStep() {
1 l. ?/ w" M: q; r, M System.out.println(id + ":" + Globals.env.getCurrentTime());& Q T1 F- y8 B. d, S. J" }
}0 w) X+ v8 ?+ p9 i7 @8 l5 a. {, H$ z
}' j( i/ u8 }3 F# z! y
6 J. D% b* A- x8 E$ bpublic class ActionGroupDemo extends SwarmImpl {
2 Q3 q3 e4 E+ A; X$ C ScheduleImpl schedule;
j" q7 r' X' H( K- T" G/ N ActionGroupImpl actionGroup;
' }0 D- x6 T% \. I ListImpl list;) \# r1 `# @- H
char Id = 'a';" x. X( X" i& T/ E, M. b
; @! b7 ]; Z. N+ r$ j; u- @ ActionGroupDemo(Zone aZone) {- }6 [9 {2 [' ~8 K" Y7 N$ b/ p
super(aZone);$ k# F# W9 |# H' N) s
list = new ListImpl(aZone);& D P! Z' R1 g, l, ^% t
swarmSetp();2 M o; L: j: b% }& w3 D% n
actionGroup = new ActionGroupImpl(aZone);
2 _, w# C& `( @6 J- [ schedule = new ScheduleImpl(aZone);
P$ Q/ b; V) U6 M7 M5 F* U/ k; u try {
" ]3 ~; q2 g9 ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);- D: U6 f$ F9 V+ k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 B6 d8 |; a' t5 v% i
+ o; C; _) [4 f$ d
actionGroup.createActionForEach$message(list, agentSel);- n$ R1 ^5 ]9 D* I3 G, w8 k; b
actionGroup.createActionTo$message(this, swarmSel);3 ^. i- P4 \6 F4 T
schedule.at$createAction(0, actionGroup);( U* L2 C9 ^+ l6 D* m
schedule.at$createAction(1, actionGroup);
# [( k% e6 U* T* e schedule.at$createAction(2, actionGroup);0 j @2 a8 Q& K3 y
`3 C4 j2 h; w) I9 W
} catch (Exception e) {
: N& V! h7 L+ H" k& W5 q7 J* R e.printStackTrace(System.err);( O. o1 c* O0 b* j7 a9 L
//System.out.println(e);, f- f4 Q% X5 M4 b* ^& [: }
System.exit(1);
6 Z; p& Y. z( H p6 N }
# k I: |1 z# C* l* x9 M
5 c! \- t$ j: `2 T4 P$ |3 X7 z4 t$ b* K3 L* A# y& G7 W; Q( \
}
5 b* Q, _7 b+ y
3 u! L) ]- i- |; ` private void swarmSetp() {
: @" G' e7 ~+ p2 v list.addLast(new Agent(Id));
4 N% z5 @0 d2 G; A Id++;
: r! l2 w: }4 j/ |3 Q" \& e/ b }
0 f( s% h a0 ~) f9 K+ A
6 _1 P* f. i6 _- N9 Y public Activity activateIn(Swarm context) {
- h* Z! \8 A" ?, J& a. @ super.activateIn(context);
9 }1 G5 \+ }9 C$ \ schedule.activateIn(this);+ r( T. b, j9 j- I7 z
return getActivity();/ l" _) Z% f+ u# O; i3 E
}
4 g! R5 \ {7 S; E. J1 ]! k6 J. g9 W1 x5 U
public static void main(String[] args) {0 B9 n' T' L" I1 a& J0 r( k- B
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: @7 {/ k8 \$ J7 ^/ @: i% G! @$ k
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 E! `8 f3 n0 q3 h9 t% ?5 B5 I
swarms.buildObjects();$ L! O; o6 X6 |
swarms.buildActions();0 x/ o0 C& D$ ^3 j7 @2 V( u; J
swarms.activateIn(null).run();
) T6 e" Y G* _ }
3 B$ C( v9 [2 H5 G/ Q3 q8 I0 w* \$ R- {4 V* f3 ^$ E8 t
} |
|