|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 I9 {8 l. j U" x C, H
; I' N+ ]( ]3 s0 C& V4 t8 n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 s8 T# Y( L$ o) ] |& I6 x5 v% L0 |7 z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 q/ g2 H. M9 d" ~: Y/ |
swarm.SignatureNotFoundException; k5 q8 D4 W6 m q$ Y
at swarm.Selector.<init>(Selector.java:76); l$ l( v* T* o# K/ h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( D% {; Y; T$ L J
at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 F+ D! V8 Y/ c# s B4 B7 j! Q) V7 I5 S% Z$ j) O7 r! f F/ |
8 e" ~0 O' C4 I5 i
import swarm.objectbase.SwarmImpl;, N+ n* _1 V# }$ R1 x1 Z
import swarm.objectbase.Swarm;
w* l) l% A# c' l1 O2 D# z+ Fimport swarm.activity.ScheduleImpl;
, f c: Z2 r; f4 q/ [import swarm.activity.Activity;5 D- ]/ [% t' Y5 y4 S1 ~
import swarm.activity.ActionGroupImpl;
* a, O9 G( j+ T1 x- J y8 `import swarm.collections.ListImpl;
8 Z5 q4 a. K5 I. w$ Ximport swarm.defobj.Zone; 4 d- e, ^$ d. w5 C% |+ i
import swarm.Globals;4 z7 }0 M$ b/ h/ u
import swarm.Selector;
; |2 m! M9 U# x0 l. ^import swarm.activity.ActionGroup; : Y5 h9 Y- _5 \$ Q) i% ]5 u# U. q
class Agent {
8 b$ B5 {( g+ H1 T: H1 ` char id;
2 @ c- M9 p1 ]9 x& |1 g. a
, Q$ [$ g u, H7 @4 G6 B Agent(char id) {
6 D) V( N* k: n3 l% k this.id = id;& k. d) W8 h% o8 J1 h+ W6 I
}9 y4 o' E# w% i" `$ Q9 v- u
! N5 s! t; u: Q! v# a6 I public void agentStep() {
& X) V+ l0 Z# y. [! [* b. g System.out.println(id + ":" + Globals.env.getCurrentTime());
5 Y0 M5 `* d8 ~9 Y9 R% J5 L! U }
7 k# O& }& G8 q7 {# F. P}
& I2 _# X- C- V/ Q: k4 n5 E
$ i: y. v9 x* d! K/ G5 Q. j7 Spublic class ActionGroupDemo extends SwarmImpl {- V5 p1 f+ S; v% g# r
ScheduleImpl schedule;9 `6 p: E: P W& G8 ^! k( ~
ActionGroupImpl actionGroup;
$ a9 O8 W: S+ q- H9 {6 z ListImpl list;8 @0 n2 Y/ W0 d% s7 {. y
char Id = 'a';
% h i( |3 [, M" o) l% q7 f6 K$ y* g5 p
ActionGroupDemo(Zone aZone) {
8 L' r% ]4 C" x# V' L& V super(aZone);6 W# d7 p4 l- l: w) j; c3 K) h/ A2 ` K
list = new ListImpl(aZone);" N3 [' z z& E0 @8 M, h
swarmSetp();
4 d: D- G! H# ^! l0 u actionGroup = new ActionGroupImpl(aZone);
. |* N: p" w6 r" u8 z schedule = new ScheduleImpl(aZone);
J" a u$ z, o- A try {
( L+ c& s3 Q. u" t0 }: i* u4 F Selector agentSel = new Selector(Agent.class, "agentStep", false);8 F1 o: E1 K4 q6 N% O$ N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# W( A t3 K, T- H; y
$ S( I6 `; }7 o1 }2 s) H. a actionGroup.createActionForEach$message(list, agentSel);
7 E0 {3 P$ b/ h; S6 f actionGroup.createActionTo$message(this, swarmSel);
/ m* {; X5 I V+ T1 q schedule.at$createAction(0, actionGroup);7 x+ Q( }9 f" L
schedule.at$createAction(1, actionGroup);
" |) n7 D+ y1 p8 b5 k( n: j7 K! q7 j schedule.at$createAction(2, actionGroup);8 ]- [* e+ O8 {% B" G, P- d
3 |3 p/ H* K" K" t2 _" K$ X
} catch (Exception e) {
/ a% \9 g9 A, W- v/ f$ ` e.printStackTrace(System.err);
( G- U& p1 p# }% h) S( _ }% T //System.out.println(e);/ L4 e$ u0 n' m+ i, x+ K c4 \
System.exit(1);. R2 }3 T' o1 g0 g' o) x7 x
}
" p2 r/ @5 }, ~: f5 M4 s
$ g& i4 U4 r$ X1 Y; \- \
+ b% t2 c+ @. u! s }) v" t$ o: e, T, \; t- ~
7 {: K( j$ T3 Q8 G# c! v3 e+ f
private void swarmSetp() {8 U0 w/ @" E/ U7 q" e8 Z
list.addLast(new Agent(Id));
2 z' U" ^" k. E9 R Id++;
6 o! P6 U) H- Z' l }' j( q1 `% z& h* q. A
$ }) K4 N) T. N/ w' k public Activity activateIn(Swarm context) {
. p( ] p3 ~1 ]+ ` super.activateIn(context);1 s2 ? t( x7 ]& E7 E4 l
schedule.activateIn(this);
) [2 V# Z1 H& N$ D5 g+ V# V2 Y. t return getActivity();3 j# j! I: Z0 T; H3 q6 W
}
" ?+ _; H( @% Y8 [9 U1 v3 a) J2 v$ ]! g2 u* E- o* n/ f1 m
public static void main(String[] args) {
0 b: d* |- ~9 a F% i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 ^$ [$ p, j+ f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ `' G7 \1 ^7 @& Z! F$ U9 J
swarms.buildObjects();. I5 \ M4 v5 W. u
swarms.buildActions();
, B! _5 S1 a& B9 K swarms.activateIn(null).run();
' ?3 U' u, g1 P$ G* G. r' w }' c( B$ `0 v; g. ^. D% @, } a
0 Y6 {+ J6 y& ^& I1 u2 S6 z; N
} |
|