|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 r6 j) j* T" d- ]* Q/ n* p" l6 |
5 ^5 @, h7 v3 M; W; M3 L+ H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ M; m) q* s' n8 d, T$ k/ Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 @- G) Y& c5 _% B7 }swarm.SignatureNotFoundException
4 n- H1 e ?4 s* t% ?2 { at swarm.Selector.<init>(Selector.java:76)
/ ~6 C9 x7 h4 J- t& P! S2 F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 ]: _! O& j. H- ^" S V* P3 z+ f at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 x0 F$ l9 `( Q" }: O1 P! ~' O: v8 N8 }, R! h
, G3 Z0 b. L) `, L: K1 oimport swarm.objectbase.SwarmImpl;/ a* @. Z* ?+ H |! b
import swarm.objectbase.Swarm;7 @8 _4 S- ~3 O" ?. W0 q
import swarm.activity.ScheduleImpl;
' h/ f! w5 A5 s# ^" N" x' aimport swarm.activity.Activity;/ z$ J; u, ~3 E, A# j& C3 U
import swarm.activity.ActionGroupImpl;
' x9 J+ k, F9 `; A: D+ Y0 Q. Rimport swarm.collections.ListImpl;
' ]4 U3 b7 f: q" X# P, aimport swarm.defobj.Zone; : i! n; I3 ]5 X
import swarm.Globals;
9 J- q3 \' t# y3 K2 { w6 @import swarm.Selector;1 N3 y7 y# k- g! i+ L1 Y+ t1 @3 j
import swarm.activity.ActionGroup;
I& z: D# f9 `0 }* D0 ?; Fclass Agent {2 |3 n5 u, w! _4 ~* R; n
char id;
: L6 f q+ ]5 x2 K r8 |
2 s+ I) Y3 \: N" d1 j T+ G( k Agent(char id) {
2 c1 o# ^6 k4 w" F( ]" T this.id = id;/ {. e* B1 b, ]$ ]
}9 z) ?9 G* V. u. W
; S. L0 y* C+ e7 N0 ?
public void agentStep() {
- ]# a/ `$ L1 R; v+ W System.out.println(id + ":" + Globals.env.getCurrentTime());- N4 c* h# t# ?+ Y/ Q# c- L
}
% }$ H' F# R* J! @2 w2 V% `}! Z& V( k$ V' J: \( f4 k4 s" C1 y
) u9 \7 Z* T. S1 c+ R% a! W
public class ActionGroupDemo extends SwarmImpl {! u. l. v6 u- I% ~+ y2 u! ]$ \; l
ScheduleImpl schedule;
, ?. z6 a7 U. l8 g( f ActionGroupImpl actionGroup;: S7 F; P9 d- C
ListImpl list;+ o6 B1 l8 C. A3 |
char Id = 'a';! N& g5 \2 |" j2 I/ ^5 ^+ L' m) Y
3 [4 t7 w/ f; k# n2 j8 _! b4 B
ActionGroupDemo(Zone aZone) {* X3 K% `4 L8 T* g3 @5 h9 x
super(aZone);1 _. W L4 n+ L1 u
list = new ListImpl(aZone);
+ l4 o- i+ R; i( k! [6 Q swarmSetp();
$ e3 |" d$ @( W/ I1 {8 L actionGroup = new ActionGroupImpl(aZone);
7 k' n: v; ]% l$ I: F schedule = new ScheduleImpl(aZone);
2 j3 }) U) J% j- o# G1 ^, R7 ^6 o try {
/ i. e4 _! H5 m- @3 Q Selector agentSel = new Selector(Agent.class, "agentStep", false);7 z" F0 e" ^. F V1 D; U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; c+ a! D, g ~. K+ X% G
* A' F* H Q5 m7 b( _ actionGroup.createActionForEach$message(list, agentSel);! \: c: r S& x
actionGroup.createActionTo$message(this, swarmSel);
6 b# |9 e1 r. W5 E& B schedule.at$createAction(0, actionGroup);+ |6 E7 r: \! K
schedule.at$createAction(1, actionGroup);8 L0 N3 P3 o4 f# w6 f! J: S
schedule.at$createAction(2, actionGroup);+ A# _) b* {' I+ x1 d/ G
( e/ P( y% d6 D0 X9 X } catch (Exception e) {0 K0 G* n/ T; p* W( {
e.printStackTrace(System.err);9 M/ D: e7 g8 y( ?0 x# p; V8 U
//System.out.println(e);
: n: } e, i! E% v' H8 ?( S* @ System.exit(1);$ B+ V& M1 F3 |
}) {' L' v5 N R) s; J8 B
6 t# x" w6 B6 X3 I& L, q$ Y% p. o. _; y6 N
}
c! c2 b8 g b! U2 L
7 {' x- c! V/ c! E5 T( W private void swarmSetp() {
* w; h2 l8 c: ?4 Y list.addLast(new Agent(Id));& O) n9 P' H6 m, H/ ` E
Id++;
. j3 D( h$ p: W9 w }
, i6 |, H: L2 ^- \, g7 J2 m; N$ I, s% a- j+ O+ ]
public Activity activateIn(Swarm context) {. w I% [) P/ x/ Q: G+ J4 v$ r
super.activateIn(context);
7 Q" j0 @' b+ t. T1 @ schedule.activateIn(this);
9 s) W* c6 N3 v) N return getActivity();
8 g" i* r8 O0 ^( [0 M5 Z: R) u$ t }+ i% ]6 i, B# V. ?1 d
3 L% n2 Q% d% P( R5 t" G$ e
public static void main(String[] args) {
* a8 Y: C/ Q. R# i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' ?/ P: F8 ^, i" o4 Z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- G; K8 N1 P3 S2 ^ v swarms.buildObjects();5 n9 q5 Y2 h1 S) |2 `: y2 h4 m# B
swarms.buildActions();: |+ m3 i/ y; ?9 {
swarms.activateIn(null).run();
! W6 v) Z9 a' G( q }
I' y( ~7 N+ D w7 d6 p" ^* D
( {' V8 U" j f) E$ \} |
|