|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! m0 a& l( o" T" D7 Q& ^
1 s, L) x) y, [9 ]( p! X$ j. g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ W: p# S& Z8 i8 a I. I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' M6 c1 w) H Y* M$ Mswarm.SignatureNotFoundException- `2 M/ f5 _, Y
at swarm.Selector.<init>(Selector.java:76)+ X+ G7 E$ B0 `5 V' r2 j2 y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: C4 n5 s5 ]+ d6 N# F, | at ActionGroupDemo.main(ActionGroupDemo.java:67)* O/ r- ~- _/ e9 C7 a
+ _3 m& z) v% n
) m" K2 @& _0 V p. k& O( B! Pimport swarm.objectbase.SwarmImpl;3 k2 o: o. p- ]+ n1 X, `) Z
import swarm.objectbase.Swarm;' x/ `$ o2 \1 v9 ?
import swarm.activity.ScheduleImpl;. E$ k. O% G7 r+ ?! C2 Y2 p
import swarm.activity.Activity;
p D- v. f3 J$ B2 u% d! q) \import swarm.activity.ActionGroupImpl;
/ G" `5 q0 k) P, F( y# nimport swarm.collections.ListImpl;" i! M1 g, p4 S% k* u+ p
import swarm.defobj.Zone; 8 r5 J# F8 Y7 v9 a% w; X( h
import swarm.Globals;& y% \' L" A2 e3 \% X9 r4 ?
import swarm.Selector;) p( h& f/ t; q1 ?
import swarm.activity.ActionGroup; 8 m; m+ T5 V5 C |! D
class Agent {3 T0 _0 F0 ], l g3 D& E5 P4 n
char id; u9 L( S" b& X
/ T! s1 c5 Q/ v2 f3 d
Agent(char id) {; n9 I: c1 m1 X b
this.id = id;7 x- u* N& }0 o. ~$ k2 I7 h
}
E2 b+ H5 F. ` S7 ^/ `& u6 _4 C M4 y/ k
public void agentStep() {& ^, u4 W4 e3 X* s6 V% j$ e) J
System.out.println(id + ":" + Globals.env.getCurrentTime());3 S& Z; X, h" a& K
}
( t: n8 g. J' X) ~5 w. Z}% Y" f: ]9 p- _0 E
. h; k. t5 n& i0 X/ L9 i7 n' j
public class ActionGroupDemo extends SwarmImpl {9 u$ N2 D& [8 X) Y# G/ E
ScheduleImpl schedule;
+ }- A" P3 j- P: A ActionGroupImpl actionGroup;
2 f) t) Q* v1 ?- } ListImpl list;
5 u. }! {* k6 t; ~8 c+ X5 P char Id = 'a';3 Q+ R P3 t2 b5 ]7 M% G7 {
! q/ a8 w# [5 M7 ?7 S5 b ActionGroupDemo(Zone aZone) {
* ?; E N3 b8 B+ m- w+ M6 B( \ super(aZone);8 }1 A) e; a, i% H4 G4 B5 J
list = new ListImpl(aZone);' D# z5 R c: G4 j
swarmSetp();% t+ @+ }. W" w/ i
actionGroup = new ActionGroupImpl(aZone);9 q; o* L& E2 p- Z9 k" {- m7 R, b
schedule = new ScheduleImpl(aZone);* [- U2 P# \! N8 e: G/ a
try {: c, x6 ]5 e, x; W; r* E2 R9 u" ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. k4 S8 E' M1 e( h7 d Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
}# S" r& C6 S3 K+ @4 v5 k. \+ d6 G
$ y( L" a% Z5 X- J2 [ ]- d actionGroup.createActionForEach$message(list, agentSel);
5 X% m5 H$ I6 K6 N8 i/ m actionGroup.createActionTo$message(this, swarmSel);- J: j# p5 E" c- S' C0 s
schedule.at$createAction(0, actionGroup);! F4 C& u4 i9 c
schedule.at$createAction(1, actionGroup);. h8 z) b1 c1 }+ B. A3 W
schedule.at$createAction(2, actionGroup);$ u9 c1 ]0 O" U! S2 ^
( P0 F$ x) F2 ~7 w4 @
} catch (Exception e) {1 V" U' W$ I9 n( D
e.printStackTrace(System.err);
l" @! o7 Z5 x" T6 n# | //System.out.println(e);
3 M# I5 z# J3 E& F9 c! G System.exit(1);
]3 c) [5 r' K1 E }
9 A' \9 N% \# v" f
. x9 K: C$ M/ O' C
4 a+ X' `- l" n% J, k( i7 | }+ d3 \$ b. v9 F- A2 S8 Y% p4 g
# z' o' l, t; U" k" R
private void swarmSetp() {
: n1 t3 U7 \$ j7 H) [ list.addLast(new Agent(Id));" y& h- j; f6 w8 a3 u
Id++;
5 T! V" f9 e N) r8 x, L- q3 u! J }
5 h1 m3 |1 ^. w: q! |: W& ?" z% Q% F9 A3 a% Z) [
public Activity activateIn(Swarm context) {
" {# u8 p$ H9 R super.activateIn(context);& Q' `3 E, f% p1 O4 a5 Q% E( m+ u2 r. o
schedule.activateIn(this);3 ]1 B0 w/ D& E2 [' u- V8 m
return getActivity();# p! H. z) m. r1 N/ _
} F+ Y. K( A. X" j; P& M+ E
% U @! f! v5 e# G public static void main(String[] args) {
* S5 D( J _2 }( d- Z. F5 g: [. O Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( a3 r5 C( R" Z0 N B3 M
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ w$ _5 I9 H3 [, R
swarms.buildObjects();
! P' Q ?5 m2 W6 @+ ^' } swarms.buildActions();
* `& {; e" `! B% N- ` swarms.activateIn(null).run();' Y5 d6 K: S# i6 G
}) {6 U% u+ S0 J5 i* |4 n8 E1 |$ w
7 C9 }) }- N" {+ b
} |
|