|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" B) c8 a* J% ^) m, s9 k! m7 X3 C" X0 [+ q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ M+ ~* {- i$ I7 k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 `) P7 Z( u* ^- N. i z+ f
swarm.SignatureNotFoundException# m( i+ k. h$ s& B9 m8 x
at swarm.Selector.<init>(Selector.java:76)
8 v6 p' v; B+ s. k+ S& y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 T" Q6 }2 Q+ U) u at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ @; ]9 l0 S4 `- ]$ Y, ], Y- ~, @( O M- i* ^2 q
6 Z# q) \1 J5 t" ^* T6 bimport swarm.objectbase.SwarmImpl;% R) Y. J- r5 d5 k- \
import swarm.objectbase.Swarm;
, r/ Z* S7 N) O# x2 s& I3 Cimport swarm.activity.ScheduleImpl;* E9 Z( |* T9 o7 g4 b) T
import swarm.activity.Activity;* [4 x! Y( X7 c* _
import swarm.activity.ActionGroupImpl;
4 y/ h; t0 o4 Q% i& f O3 Yimport swarm.collections.ListImpl; O J. m3 g9 `
import swarm.defobj.Zone; , O/ b! ~; Z( B5 m
import swarm.Globals;/ u$ H; |8 b/ X$ M3 g# b
import swarm.Selector;2 p9 b, {" g! H0 O$ @2 j; A" ?
import swarm.activity.ActionGroup;
1 \. u5 I' e# F) g! v( gclass Agent {3 Q) e; F9 n1 Y6 A% l8 K, ~3 u& a9 E
char id;3 d6 r% N; u l; R) `, l
W& I. Q" m" h: {, Q) J1 C* n
Agent(char id) {
' R* A# i8 P6 s' @/ ] this.id = id;
( h# q5 A' c& D$ x% z7 r: k }
/ d; e6 U8 ~( Y7 r, F2 t* Z2 W; p
. o5 F# b/ N h5 Z4 D' i7 W public void agentStep() {
7 j* [% P) O& [% x1 R' h System.out.println(id + ":" + Globals.env.getCurrentTime());
: e+ C: q/ S" }0 R% K }4 w" `9 v/ e! {! p6 s' [7 Q V
}! F5 ~4 F- T: ? O5 f
3 E: j9 `' c3 k. upublic class ActionGroupDemo extends SwarmImpl {
2 y( C: ?% ~3 O8 C$ Z ScheduleImpl schedule;+ S, z1 `3 B$ o& h; G0 F. e
ActionGroupImpl actionGroup;7 z" q% t. ~) ~( r0 j
ListImpl list;6 v) Z! Y! f, J; p5 B5 J7 A' j% E+ [+ r
char Id = 'a';
" N- F4 o! I9 K3 ]6 z) H! G; b
. ?% Z: ^) O( V: K ActionGroupDemo(Zone aZone) {
0 V `& M* x" q/ r3 T6 q super(aZone);6 g |/ _9 ?5 i1 @- i
list = new ListImpl(aZone);
5 ^, D/ J. S9 U swarmSetp();$ T. F: o9 Y; t) v' I
actionGroup = new ActionGroupImpl(aZone);7 i: Y( A5 f+ r; p) y
schedule = new ScheduleImpl(aZone);
1 K8 D1 Z1 n8 ?, O" x try {& n) b+ X; r+ P# h
Selector agentSel = new Selector(Agent.class, "agentStep", false);
# M# X9 a! u ^( k Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. a5 K* q P, Y; b) H $ R1 E/ x" O5 c% i7 b
actionGroup.createActionForEach$message(list, agentSel);, Y4 T- ^- m) a% Y; M& U& m8 |
actionGroup.createActionTo$message(this, swarmSel);8 M' Y+ K2 s7 j4 b) H
schedule.at$createAction(0, actionGroup);4 [* [' Y+ `) g. N) j
schedule.at$createAction(1, actionGroup);
: {- \# l* O/ s9 c* Z9 I schedule.at$createAction(2, actionGroup);
/ k. O& D" `! H1 M) L) f1 t+ i4 N ]3 _% K8 g0 Z9 V. U* d& H
} catch (Exception e) {4 h4 [) }% N/ a- e" d" N Z2 \% \
e.printStackTrace(System.err);( a- y5 h3 j+ M% y) P' A, M
//System.out.println(e);
) R8 C$ B) u& z- h5 m+ u System.exit(1);
$ T4 J7 W# o5 @: \) s/ Z* }" h }
; x4 f% u/ T* ^2 v" }: Y! T$ `' }9 i
. k5 a0 s, S# j2 ~6 X/ ?1 |. V, C) ]
}
0 G6 H8 O; @. u. F* I+ E, u) h; g; j0 w( q0 B
private void swarmSetp() {) I3 n6 ]5 e S7 s2 @) V: E
list.addLast(new Agent(Id));; C# F0 F. R8 Q) s* _; p4 \5 o
Id++;- n- D+ a. X7 P- V; }
}5 e9 x' x" J% R; Z7 Y: i# [
5 m/ e" o9 @. Q6 t8 T public Activity activateIn(Swarm context) {
1 {- v5 ?2 W* c% [( ~; b3 y super.activateIn(context);
' o* x; l4 a9 n6 T# o9 j7 s schedule.activateIn(this);
! Z- }1 l6 g$ ?* e return getActivity();
. A. t% B& n. k' x }
|( V5 `% R. _2 G1 c7 K! E3 b" N8 Y" E1 `1 d3 u3 M8 D
public static void main(String[] args) {
8 S1 x5 @3 c( h7 V4 D, ?" M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# M+ h+ b* r$ H+ Z% y" r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; e) W m' v. `( E% u
swarms.buildObjects();
7 q; B& X8 F0 k) I6 z6 W swarms.buildActions();
( H% b: {: |9 W* Y6 u% M3 y swarms.activateIn(null).run();$ ~! m$ P7 S. U6 O% J
}% I% B1 p9 e- N
8 d% V E* y1 N+ g. Y3 z/ [4 p
} |
|