|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# J: W: ?$ r& ]8 _! D1 `$ F" n5 |: ~; O# _; o1 I% l- `4 g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 Z. L6 c- U- ?( U6 R& q1 e; z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 z5 `2 @% ^, k7 v2 W
swarm.SignatureNotFoundException
2 k" r! q2 W6 B/ I; n8 I at swarm.Selector.<init>(Selector.java:76)
9 [" F+ O7 w, R, q+ ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 }: e- a4 i$ F5 M( d
at ActionGroupDemo.main(ActionGroupDemo.java:67)( o/ c$ x* d' E8 { @
4 V- J- r" @' d6 O2 T: r7 M/ `
* G9 v N) U/ O* _) n X% bimport swarm.objectbase.SwarmImpl;8 p7 `, x! K3 p
import swarm.objectbase.Swarm;
# z$ Q9 P1 i! Z+ g7 o; T) O$ ]import swarm.activity.ScheduleImpl;
4 }& U" {1 G4 C9 ~. K2 |import swarm.activity.Activity;
! J6 `, b6 ` H U" Jimport swarm.activity.ActionGroupImpl;/ m) }; N! e0 a+ z
import swarm.collections.ListImpl;/ _& f, {7 W# R4 m& o, Q) _1 E; P
import swarm.defobj.Zone;
1 p' D( ^7 @7 K% E8 |: k( Iimport swarm.Globals;
, Y! W( D1 k- f$ d; W1 ~1 Zimport swarm.Selector;' Y9 O5 j' E/ p- u" Z: A4 q9 M9 Y
import swarm.activity.ActionGroup; ( {0 i6 q0 O6 ^
class Agent {- ]) i$ t: O- o8 j6 C5 d& S0 v
char id;
" O& ] I: V$ i7 B% b( ~1 Q, J, \
7 f% @) d! u0 M [3 R2 ~ Agent(char id) {6 p1 D4 Z7 I/ P* N; s9 [
this.id = id; M0 ]' d7 E0 }/ D5 y; x, |4 t
}
! H+ B# d8 ]5 R" ]% ?- D; s) q: r6 i4 x9 R, A/ ^
public void agentStep() {- m* I* W. \: E0 j9 V
System.out.println(id + ":" + Globals.env.getCurrentTime()); A0 V& P2 q9 B; R
}/ G! ^# r8 O- }$ p# S' S
}
4 U8 ` p' d+ M8 p7 _5 e# k/ K) \3 S/ W a, o: v" h: I
public class ActionGroupDemo extends SwarmImpl {2 p! @% v: u$ o8 k7 j# j3 i3 V1 y( s
ScheduleImpl schedule;
* ?2 ` e+ a1 ]: K4 q# T ActionGroupImpl actionGroup;
& v$ ^, S' q9 C9 ^2 m/ F6 Z7 u ListImpl list;& |8 X2 l5 F/ k
char Id = 'a';
9 l& g. z. w; `. }# c& b Y; E. m
, g$ U1 P+ c( Y# T/ \ ActionGroupDemo(Zone aZone) {
, B. h( R/ d$ y0 ^3 Z super(aZone);
" Z& {2 g' b, V* e list = new ListImpl(aZone);
9 ?0 K" o j- u2 w swarmSetp();3 p) b& q6 x& W# P
actionGroup = new ActionGroupImpl(aZone);; a( o! ]' U7 S% x$ T- \
schedule = new ScheduleImpl(aZone);0 }$ c+ z4 ?: B J1 z5 F
try {5 {" }; n) h+ L$ _7 V% M8 K
Selector agentSel = new Selector(Agent.class, "agentStep", false);
, s1 B# h& ^( ]7 o& J! g Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 ~$ ~; K0 k* l- f * k" b" Z/ v- y
actionGroup.createActionForEach$message(list, agentSel);$ R4 [! i& ?6 `* _; p& J9 E
actionGroup.createActionTo$message(this, swarmSel);
" p& [! S# U' L6 Z: d5 v schedule.at$createAction(0, actionGroup);
2 y, B: p& g7 E" z$ M Y schedule.at$createAction(1, actionGroup);
/ `6 d! B& S4 e schedule.at$createAction(2, actionGroup);
% P# f# }8 G( p( U; |$ ~: ^9 z. U0 m. z
} catch (Exception e) {
9 H/ c3 j( b0 U$ e5 b# a | e.printStackTrace(System.err);
! y, @ n7 f! k' P, a; M8 q" f. v //System.out.println(e);* Q# u. S5 X% s0 ?/ `* q
System.exit(1);
8 ?1 r7 I; P, j2 u- J+ ` }- U5 i4 i# L( b% N) d# ~
$ j; a% E. ^" o3 x7 @8 m5 B
+ K% e, C; I$ b8 n9 B) W( k1 B }
8 E9 P+ Y: y. P& x. W& |
) ]% }$ ~ q% `8 E2 F private void swarmSetp() {5 m$ q, J7 I' `2 h9 z
list.addLast(new Agent(Id)); V3 A `4 I# Z
Id++;
5 O2 g% v0 w. }1 B$ W6 j) T }
/ w# Z& C! R- G( C; r" c; \3 M
. Q+ b& o ~* c4 s6 y2 ~ public Activity activateIn(Swarm context) {) f7 P0 Z% a8 \ M/ u( F
super.activateIn(context);
7 n0 j* W, m9 J1 L& L7 I schedule.activateIn(this);
# f# l( j2 N( D) d' Y$ V0 h. |8 ] return getActivity();% C; [ t9 n+ K( e) Z4 n
}0 v5 l! a- O/ g9 I) I' N
8 t, N& ^0 Z5 }; G! u
public static void main(String[] args) {
7 u9 b: x, x! s( s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 O8 g: Z1 j6 t& d1 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* C+ F9 {8 r/ A$ {+ ]
swarms.buildObjects();
1 b3 G* k" Q% P: t7 t swarms.buildActions();* B3 W- \) w: L; j
swarms.activateIn(null).run();( z4 j+ P5 |) b4 E) j
}5 d O2 @6 ?) h7 o- V
* ^) I5 P5 I% b! M5 A- u} |
|