|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' X) ?# P/ h4 i+ T. U4 y# w' v2 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 }, G! F$ }# d" G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 H) V: ?! k$ T1 L5 Y5 m" p' [* A
swarm.SignatureNotFoundException
- D; J3 q# V$ H at swarm.Selector.<init>(Selector.java:76)
& G( q) S; u8 S Q, a s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( ~9 U Q0 M$ R/ g. D( y L at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 `7 f E+ k. z3 o( j& b# A% w& L9 [3 o0 w# s
% ~! A+ y& ?* u7 ximport swarm.objectbase.SwarmImpl;
: O: y5 [* g; R0 V) Z' G$ eimport swarm.objectbase.Swarm;
$ L( Q2 F( u* q5 @( ? qimport swarm.activity.ScheduleImpl;
( O0 O) j5 c, ^5 `8 N5 X1 i" b4 mimport swarm.activity.Activity;% _+ t4 p2 }/ q7 p
import swarm.activity.ActionGroupImpl;8 X* I, ~* H- P* X! ]% o3 o
import swarm.collections.ListImpl;
$ X2 y7 X- X5 d! e) ?, V$ Simport swarm.defobj.Zone;
% l* f0 Z6 p2 Uimport swarm.Globals;8 F) O$ U) @" V5 c
import swarm.Selector;! ]. R; S+ |( K* M* p- X+ k
import swarm.activity.ActionGroup;
0 T f% y5 M* r' Z4 K8 s" R4 zclass Agent {
/ |/ J$ @# c. n P' i char id;& x+ d$ ?' \; [: C
: a; X" ]8 u% o; `+ @& x( ~% Z Agent(char id) {
% F6 j9 X: W1 c this.id = id;
$ l+ f% Y+ O8 K) v2 {: } }8 K" Y. n- y, p4 }% f* g3 F
' z% W3 y$ N: K1 W5 }. Y% F" ?
public void agentStep() {& H2 P- f' X9 K( {$ _2 w ?
System.out.println(id + ":" + Globals.env.getCurrentTime()); w# ^9 g/ ^" F; p. }% D5 J& {
}
' G+ ^( Y9 W1 _% ?7 ~& K" o) \3 n} R: D; @ s9 ] Z4 W7 L
& I- ?: c/ d T+ m/ ]public class ActionGroupDemo extends SwarmImpl {
+ Y* q# V6 I D- ?6 k ScheduleImpl schedule;
1 n, T8 ]9 x+ L7 R' R& G ActionGroupImpl actionGroup;
# u: X' n7 @' K! }4 o l ListImpl list;! W7 g$ H4 j/ S) N2 S! z
char Id = 'a';! n% { F5 |5 q% ]& J O+ \
# q4 e/ E( |4 @4 B( H
ActionGroupDemo(Zone aZone) {
6 R4 [. F7 S( Y' ~% \ super(aZone);) D/ ^( @9 }' L5 N( D; Z
list = new ListImpl(aZone);
: y- B! J8 }6 \% K swarmSetp();
( e& Q: w' P1 D9 }$ ]! I1 u) z" H actionGroup = new ActionGroupImpl(aZone);9 L' D5 | F/ k0 O y/ b5 V
schedule = new ScheduleImpl(aZone);
2 L: A. C, B- u# V try {
0 z" N# M# F* C. ?# v Selector agentSel = new Selector(Agent.class, "agentStep", false);
* `5 ^5 b# ^* Z8 A% o7 k1 {4 [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* C$ A+ }: u8 f- o0 f
9 N/ ?( `* [$ k- r3 q' z
actionGroup.createActionForEach$message(list, agentSel);
% Z/ ~; j) T! r A) w/ V: `! L# y actionGroup.createActionTo$message(this, swarmSel);0 C, @5 Z) u v' W
schedule.at$createAction(0, actionGroup);
- f' l9 v' q1 u: C$ v! L" R% ` schedule.at$createAction(1, actionGroup);! Q/ R/ g7 X8 ]! @& B
schedule.at$createAction(2, actionGroup);
) }2 Q8 o! q, `9 p! a! F# c9 P) W, p4 R; N" ~2 C) s
} catch (Exception e) {
5 ~ e Y! w; p2 z: y. u e.printStackTrace(System.err);
/ I1 M* K) }9 s- } //System.out.println(e);) f! a: k2 h8 g& k4 j. E
System.exit(1);7 h+ c/ O$ b6 M0 d; l# W
}0 N% X2 s/ U a" ?& _
7 v8 W- l9 b2 ]$ Y! m' o6 B( M: }3 d& |7 G" [
}0 q2 E6 R8 D3 r1 ?
G9 s( A9 Z% n% a' J z: b: Y
private void swarmSetp() {
/ ?2 b+ v6 o! p+ X list.addLast(new Agent(Id));' i: o4 d+ Y$ s2 k9 f
Id++;1 X5 ^$ X1 _7 V6 H; k& V- R
}
( Y: n9 g& r5 b1 | Z9 f7 x8 g( }( o( k& x6 O3 m/ C
public Activity activateIn(Swarm context) {
4 Q' C z r# }* y0 p- X super.activateIn(context);
6 ~" P0 C0 s! B1 `2 S0 k. y schedule.activateIn(this);+ n; w7 h7 M. _1 ^8 u6 U5 _7 f% N
return getActivity();
/ v; b: ~) V: e: N' u ?0 D. t1 x }
% o0 d# T$ H6 `. b. R: F/ {6 M; {0 Y# c( j0 C5 z
public static void main(String[] args) {- |$ ^, [5 B/ l- a/ o+ L6 R: H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: t, }. J! J1 Y* D8 ~: Y/ j! q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 k, A, y$ p3 f5 q4 {+ C$ a" J0 | swarms.buildObjects();
) T$ n9 q% p$ N swarms.buildActions();
5 D$ `1 G9 n" _9 c# B, o swarms.activateIn(null).run();
, o" j% P7 e0 s' J3 S$ B) S2 b' G( x2 t }! Q5 |9 v, r7 _# F; L7 d% {
8 I$ t$ S7 n7 `6 J0 C7 d0 B! P} |
|