|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, o: v+ }1 s3 i- Y( ]4 ?8 S# v: i& v A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; Y$ g/ E8 y" B. ~! Z2 I5 Y- k( t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% K* y1 \: F3 T4 O
swarm.SignatureNotFoundException9 a, Z* d) d# e# B0 h
at swarm.Selector.<init>(Selector.java:76)
6 M. g% M" m# x0 S" K at ActionGroupDemo.<init>(ActionGroupDemo.java:37). ?6 e |# L" }. k
at ActionGroupDemo.main(ActionGroupDemo.java:67). {2 q9 R6 m# y
$ G) U$ o: w1 o
7 b; y' Q0 R3 i( cimport swarm.objectbase.SwarmImpl;+ O# o5 Z( M+ K7 _
import swarm.objectbase.Swarm;
3 w) a# j& X5 H" D4 }import swarm.activity.ScheduleImpl;
6 S. p* _ n! pimport swarm.activity.Activity;
$ W' Y9 r3 r, @# a7 |import swarm.activity.ActionGroupImpl;
' J$ |4 K/ P# [1 nimport swarm.collections.ListImpl;" \- ]/ N$ e6 Y. M, X
import swarm.defobj.Zone; + D" c$ e7 h/ a% e5 y( l$ Z- e% t
import swarm.Globals;
! K+ k7 \" @9 H) u4 W+ Nimport swarm.Selector;
/ c! r& J: \! P; Z5 m2 timport swarm.activity.ActionGroup; ) ] l; v" \% X( s) h, k
class Agent {
. ^0 o3 x% i) u( C+ H. \ char id;( r% ^% z" N5 L. n
+ r6 ]) p$ U1 Y5 y& L1 V
Agent(char id) {
2 N; L. y3 ]+ |8 u1 @ this.id = id;
: E$ n. v1 q E- s }
5 {2 b; e) O8 e; A0 G6 O7 m. [& k7 p* r4 y. P/ D
public void agentStep() {$ E: d8 N( S3 y( g
System.out.println(id + ":" + Globals.env.getCurrentTime());
, ]) F C5 Y2 R$ T0 W9 m( C% } }
0 H' P& T: B, ?2 Y}
8 R; g1 L T- Z; o& M" z; l1 } t. l: N
public class ActionGroupDemo extends SwarmImpl {( R6 _9 b4 u$ A9 E3 e2 s2 c C" G
ScheduleImpl schedule;* [, C/ q4 [- R4 \! q7 }1 o
ActionGroupImpl actionGroup;
) |- g5 w* l2 M' n* A. E0 @ ListImpl list;
9 _4 j' f/ d0 R char Id = 'a';" m. B E, _6 `7 }4 P" B" l5 [
' }" L0 z8 _9 x; h+ ?
ActionGroupDemo(Zone aZone) {
* q# i& x( v0 s- m! h super(aZone);
* s7 z7 f. P1 b, s$ p" d: \6 I list = new ListImpl(aZone);
& V& t5 g9 d, s' _7 i swarmSetp();
9 }; L; k9 b$ u/ A actionGroup = new ActionGroupImpl(aZone);4 \2 e; }5 W& s+ C( r7 j4 i
schedule = new ScheduleImpl(aZone);+ [( S5 A5 ?! B3 @2 ]
try { _3 q9 {. V5 m" q3 w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ j# T9 n: ~- u' x3 j Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 \! @7 Y$ x9 E5 t : B7 ^& C# i3 f2 Z) q
actionGroup.createActionForEach$message(list, agentSel);1 |/ C9 S9 @, a2 B
actionGroup.createActionTo$message(this, swarmSel);* n7 D. Y( f1 Y0 X/ i6 e
schedule.at$createAction(0, actionGroup);! y( c2 N, ~% P2 B7 u
schedule.at$createAction(1, actionGroup);9 d( \* b# z0 M: o x, ~
schedule.at$createAction(2, actionGroup);& O' e, ] E. F1 n: p& [5 v
3 i& Y% o# l- Q4 H
} catch (Exception e) {( W2 P# }: S, W& f0 a4 L( `
e.printStackTrace(System.err);' R8 ]; p3 X7 v
//System.out.println(e);; q) y* n+ a0 M6 Y7 l, [
System.exit(1);; [; @: H: {1 w* Z4 V' C
}. z& R" O, o1 }
* M5 s, _, @ o% x9 z
1 o2 W, [4 I- n$ V! u" A& O }3 M) p( v1 y8 X/ q# `: B/ o3 z% q
, K# l0 t# u2 }. e! L W: L
private void swarmSetp() {5 [+ m$ F" E& i6 {1 W9 K: a% h0 |' K
list.addLast(new Agent(Id));
- d# Y/ B" _( A) l% y5 g Id++;
* u( E6 `2 M1 R; g }$ P; L2 N1 {2 f9 h1 k; p
+ }# O1 u0 ]* Q) j( W5 f
public Activity activateIn(Swarm context) {
3 |- {& `- d9 `; J5 Q0 a& R super.activateIn(context);
. ^1 B, Z9 L9 I% h2 @7 s, S schedule.activateIn(this);
6 R8 w \5 N4 p; K1 x0 ` return getActivity();
9 }* S' x) r0 h5 u0 ~ }
. N2 i: K$ M2 s+ R7 d; E1 N( }5 F2 U% P2 J d, a. V
public static void main(String[] args) {) ]1 B; a: k% i1 _% a0 v
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" R3 x- q" C/ F/ m3 } j! o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! A( `* g0 J2 _ P/ K
swarms.buildObjects(); M# U2 d4 B9 s, l; f; }
swarms.buildActions();
8 V4 T2 y7 h O5 G swarms.activateIn(null).run();
1 C3 i8 E0 {- \& d: g" t9 { }* ?% N& H& N+ z5 h' f' N7 o9 }
( P% x& |! m; u ~. _/ x
} |
|