|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, k1 F0 C$ v+ c* E, n0 U. S9 Z. I& j l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; Y: o( r7 m% Y" J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ w, E! T$ s4 v8 X+ D9 vswarm.SignatureNotFoundException7 C" d7 M |1 u9 W
at swarm.Selector.<init>(Selector.java:76)
( k4 m$ x8 I* [, r7 `# M6 @3 s& E at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 c# f' R5 C& {
at ActionGroupDemo.main(ActionGroupDemo.java:67): c* K, L. \2 y; C
) o$ {) r4 Y0 k P& v7 t: E+ ]: m
) A2 P: }9 p( O, t, b: j
import swarm.objectbase.SwarmImpl;) I& r+ x; l) C: S+ A* ]. a
import swarm.objectbase.Swarm;+ y7 F7 p x$ Z' ^
import swarm.activity.ScheduleImpl;
0 ~! L: w4 s0 Himport swarm.activity.Activity;; w" r) c2 J# L0 q
import swarm.activity.ActionGroupImpl;
$ S! W" h, ~* `; H( f limport swarm.collections.ListImpl;% U8 R5 C# A- P. b- G& T
import swarm.defobj.Zone;
# ^ t. v, X5 L: y% ]! e- Nimport swarm.Globals;
! g+ a+ U2 |( D1 S& t4 s2 _import swarm.Selector;7 z' k" c+ o5 i# X# B; A8 {
import swarm.activity.ActionGroup;
) k& r& a' ?0 g: w; Y2 Y! Eclass Agent {! Q7 p6 }: @3 f9 {2 `
char id;
' i4 Z* m( q) C; U6 A$ P
1 L) e' m. }: R& _+ k1 S Agent(char id) {$ \0 n, F! j2 ?5 e$ m% o
this.id = id;' C. Z+ q8 ]% `2 d, M6 e
}
5 r+ b& O0 _3 v9 i8 I, E- M2 ^7 p8 \. c2 N
public void agentStep() {* l o; }) r2 p' F- ^' R% ~2 T0 ~# n" u7 j
System.out.println(id + ":" + Globals.env.getCurrentTime());
4 i5 \* q- \3 ]) x0 P }
1 S! ^# L' \( V7 \}) ^# A0 r) v' J6 q, W9 F7 n7 M
; M4 o. ?! e' l" \, a6 y% Y# |
public class ActionGroupDemo extends SwarmImpl {3 W, \& j4 }0 \+ C1 U% ?
ScheduleImpl schedule;7 b, ^' X8 j/ S/ h: Y
ActionGroupImpl actionGroup;
. w- M% E' @; ]! M$ c6 m) i ListImpl list;5 s* D0 U0 [1 \ y2 n8 f1 I
char Id = 'a';. O; s9 e3 s- F- f# i* G
9 c; l) i4 I1 E3 j+ i/ ^ R3 F; h
ActionGroupDemo(Zone aZone) {( H- |0 N; }1 g: R
super(aZone);2 ?, J+ v0 x7 ]4 s- `& _
list = new ListImpl(aZone);: ?2 M$ F# F7 k, m0 v
swarmSetp();, E2 @1 i9 _3 D& ^
actionGroup = new ActionGroupImpl(aZone);. k, L, w! Y) ]! n* n+ d9 B: e
schedule = new ScheduleImpl(aZone);
. B: C8 F5 b3 v) G; S7 ^1 e( X try {
/ C$ t' u U& r$ X$ o2 c; @" ? Selector agentSel = new Selector(Agent.class, "agentStep", false);4 N: [) V1 @# c* a" r$ K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# f: w) H2 }+ D
; ~6 S4 m2 A9 x+ Q# y a
actionGroup.createActionForEach$message(list, agentSel);
- C! ~2 r% d. p; k actionGroup.createActionTo$message(this, swarmSel);' [5 O6 L2 m* m* i0 _
schedule.at$createAction(0, actionGroup);) Z$ E9 f. R p5 I$ j
schedule.at$createAction(1, actionGroup);/ k, q; u& ^5 \ |3 L, Z+ j
schedule.at$createAction(2, actionGroup);
* T8 u5 f% f0 O9 v6 g9 k
, z; a1 ~2 D+ \" N3 c: g# S } catch (Exception e) {
" R% u/ t: T% N. A6 R& f p e.printStackTrace(System.err);
) L" ?% |# L6 x% [' B& i //System.out.println(e);
' X* ? C! Q% Q$ q/ f System.exit(1);/ B! k. P: X. U
} @' ~* v8 X) G& u
2 ]( Q- d2 v* R0 Z9 a' | w+ `0 s8 C3 Y- x5 z
}" D% u O7 f5 i$ h0 V1 U# l9 `
$ ]- E, a# o& ~- i+ l, S, a% y
private void swarmSetp() {" P- W/ s4 y% G
list.addLast(new Agent(Id));# Y( {8 W8 {& M; O- |, k9 O
Id++;6 b3 B% \. r4 Z @; A- W) J
}
# ]9 w5 f6 B0 N, Q/ D
; p% v/ w% S# A( s' @4 g1 ? public Activity activateIn(Swarm context) {& g! p5 s7 v; a- K+ h0 r! X! c
super.activateIn(context);
. I. ]! C8 a; n1 H3 w" W3 | schedule.activateIn(this);
/ a, M( L2 Q' A' Q" k( p return getActivity();
2 I4 p7 w% Z0 X6 C7 F }
' L/ X- [# x" Z2 K" ]- b. _# d3 r9 ^& O' `4 r3 Y2 m( v1 ~2 ~
public static void main(String[] args) {2 Z# A. `( R1 h4 K! X3 _ q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. K* [- p9 }! F8 h- ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 ~; R5 S. ]2 Z
swarms.buildObjects();
% Y& c. m' y' R' Q swarms.buildActions();
2 E) ?* i p1 ]5 z$ I ^ swarms.activateIn(null).run();* U& E# z3 z8 h+ o
}8 o6 k0 }" h3 u
6 X" s+ C2 V8 S( N} |
|