|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 I2 f4 R2 h; ~7 z
8 f9 q. t; M, U9 P+ o9 {# Y; E6 z6 B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ Q7 K# H* F8 z. P6 u$ ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 a L3 x' }( k) A. j! a
swarm.SignatureNotFoundException; }; z& s) r* U' } M, r
at swarm.Selector.<init>(Selector.java:76)
7 u: m* }. D# {9 g) n0 P8 F7 Q5 i& |9 s at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& z- ]# s7 C% n$ S9 l at ActionGroupDemo.main(ActionGroupDemo.java:67)/ B" o* {$ `8 [ I( v
8 A0 ?% y: }3 h, W
1 x3 e+ r8 b: o+ O! f0 Iimport swarm.objectbase.SwarmImpl;. l# Q" r$ O9 X2 c2 y" ^
import swarm.objectbase.Swarm;% {: c3 o! L) I, k/ Z
import swarm.activity.ScheduleImpl;
. K& c+ Q+ H$ f' \1 s0 v/ Limport swarm.activity.Activity;, V4 \9 s8 Z, S, T
import swarm.activity.ActionGroupImpl;8 o8 ]* g- c N" L% @
import swarm.collections.ListImpl;+ D8 {. ^, `% O2 H. |4 P
import swarm.defobj.Zone;
( h. s' e o. N( K3 Z# kimport swarm.Globals;, Z7 c3 T! w4 r# Q; ]( `
import swarm.Selector;
- w8 e6 T5 S" I. q' z. V( vimport swarm.activity.ActionGroup; ' m) {0 }& j# i Z: s
class Agent {
# x( `6 V. o4 j7 B. | char id; y1 G2 H% b/ ?5 I1 N5 o
$ w4 ]1 ]% s/ I Agent(char id) {7 ?0 A/ p3 N. j' G( b5 ?
this.id = id;$ l5 v6 a# }, d' i9 q! r6 U' u5 C
}/ ]7 K5 u5 E+ F; W0 e( s, C
" u+ R2 ] `: ^ s public void agentStep() {9 D9 O+ l4 C- h# `$ D% E
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 V Q2 ]. r- E; \: q6 L }" p p7 U! l; l4 l& S( e! f/ l
}
3 g! u' V5 ^+ ?5 B: O `& G
8 {/ }9 p2 v; d( i9 cpublic class ActionGroupDemo extends SwarmImpl {
( V7 }% Z4 }: y) z5 B2 p7 K4 H% [ ScheduleImpl schedule;
/ Y6 A, K! a" w' b& ]# w; }1 | ActionGroupImpl actionGroup;) p) f" @& ~0 w. e E. B% d! M/ L% w+ e
ListImpl list;& X p8 H" a! Y
char Id = 'a';
/ A2 a. N% L J$ ~0 ?$ s8 e) Q6 x9 b" c; @) T3 V4 X5 p
ActionGroupDemo(Zone aZone) {
+ E# b* p0 o& \3 g# y/ p super(aZone);
7 D$ r5 X$ O' h8 u7 r6 _* g list = new ListImpl(aZone);
) e0 f1 D, l V5 H6 }5 e% t' ^ swarmSetp();
6 G2 q9 S0 W7 N( `3 S0 u6 ]$ W actionGroup = new ActionGroupImpl(aZone);
( \; f5 `# F! P schedule = new ScheduleImpl(aZone);
a g, v) O+ v try {4 V' U0 g# S3 i" I
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ z9 k" a. Y' y' n( P. v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 m, c9 C& y6 I
, |4 p' C$ P6 Z8 b) P# i: p/ { actionGroup.createActionForEach$message(list, agentSel);! h5 s1 z6 Y2 i& e \/ z H; Y
actionGroup.createActionTo$message(this, swarmSel);
, E& ^6 d& y# l/ N schedule.at$createAction(0, actionGroup);
/ v( Y- t2 D" K4 ^' |( J schedule.at$createAction(1, actionGroup);4 k/ L0 Y/ ?* P+ ~
schedule.at$createAction(2, actionGroup);
4 y% y* ?( q6 h* i* L! ~' @ X1 i: G; }3 W, h- C
} catch (Exception e) {
$ g4 u2 j! u, X/ n% ~ e.printStackTrace(System.err);
' C. m, w* }/ D0 e$ e5 u8 K1 Z //System.out.println(e);) W9 Z$ L8 \; Y
System.exit(1);
4 v( `* N6 d% ~( p$ q2 p; Q }
7 y+ o0 w2 U; l. D# O
0 }" i; t" Z" l/ }0 K4 d
' d. t* }) }7 _4 f/ u }' L4 C% o7 \* P
! S1 w! i6 u5 C* O+ I8 h b
private void swarmSetp() {
/ Z8 \# C5 m9 X' E' q0 N3 u& v8 j list.addLast(new Agent(Id));
- V9 @( Q$ p8 U x9 E' \- F6 | Id++;1 Z8 S; h" C" S9 M* z
}
N# Y: w% x, r( ]4 t/ h
% j5 V. f6 Q6 o0 t% ^0 M% M9 l public Activity activateIn(Swarm context) {- l ?, d) i, [! l
super.activateIn(context);
2 |: m3 F" B/ ]# D4 K schedule.activateIn(this);
- V/ i) ^7 r) \8 B return getActivity();
- Y5 \8 h; G+ \$ q0 ?5 _ }; D/ q1 R6 u$ a( {; H) Z
j: N( n2 s7 P3 j- N public static void main(String[] args) {
* k' ^% Y$ e! u# X; L Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 v/ r8 l: I# f; H6 H E% _
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 ~5 R1 C5 r) u5 Y- K7 |4 h
swarms.buildObjects();
( W1 w ?; }* O1 \! g& \, c swarms.buildActions();
; `" T. v- t: m/ b swarms.activateIn(null).run();
( b' F5 ]2 O# d' t/ S }
, ?9 d. K+ d1 p- J7 ]- v0 p e O1 X' r
} |
|