|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# G# z/ a2 P1 L9 B2 T' K/ s% B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" ]% @! j0 Q; F3 k4 V6 g. g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 u7 n, q; q* _4 W, m; Z. g# M
swarm.SignatureNotFoundException. Z! }3 j6 O5 u* _3 C
at swarm.Selector.<init>(Selector.java:76)
6 e1 a! A. ^0 w: G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 \6 t2 R# @7 k4 ]4 `6 z. a) i* V at ActionGroupDemo.main(ActionGroupDemo.java:67)) t: s( `6 F- I# Q
+ i1 K* i) r( {8 O! v q- b e, h$ a* b) B: W; W. s
import swarm.objectbase.SwarmImpl;
6 ~; U. }/ I/ M6 n. Himport swarm.objectbase.Swarm;+ P$ M/ U& R1 e0 B( J
import swarm.activity.ScheduleImpl;) F& c4 `, G. j8 @1 W) H; |+ t
import swarm.activity.Activity;& X) y4 R9 u# ~" z6 y
import swarm.activity.ActionGroupImpl;5 V5 t8 j- S/ n- Z
import swarm.collections.ListImpl;
9 {2 _3 g0 S* M( X) t) L9 P6 Yimport swarm.defobj.Zone;
% H0 t4 c! f' P4 F! ]import swarm.Globals;- c* o1 \0 E- f6 F5 Q
import swarm.Selector;1 C4 j9 Y" d8 b* X! t9 \* V
import swarm.activity.ActionGroup;
! F; ~$ y* T( s: Eclass Agent {. f& J9 r8 z. Z( C, E# G
char id; k' u: ~6 E+ J
- ~0 T! f3 y# Y: l, r) f Agent(char id) {0 ~1 L" C4 D/ A/ s1 g
this.id = id;! x, D* P0 ]2 `! w) t; y
}' W! ^, S- h& W9 S2 I: J4 n
1 e! c9 V4 e3 D' K) ?6 \1 o
public void agentStep() {
8 U ?% o& ]; K6 ^; y; x0 P System.out.println(id + ":" + Globals.env.getCurrentTime());+ S, D+ ~" r) X' u7 Y- {7 _5 x# i
} e4 r& R5 L, Y# n
}6 h1 X Q0 m! Z6 N8 C" W' [7 T3 A
9 {2 Y# G7 [# h: q( z
public class ActionGroupDemo extends SwarmImpl {
: l: _9 r3 d% i$ [; R& J- l0 @ ScheduleImpl schedule;' G0 K% t: x* H
ActionGroupImpl actionGroup;* h$ U. Q8 T, s
ListImpl list;2 `/ | |- ^- u, t. x% ^1 i3 V; J
char Id = 'a';
9 @/ ~: h6 L) B% r m/ C: W9 W0 U; u$ t, Z2 }& B9 t
ActionGroupDemo(Zone aZone) {1 f2 _( _6 i, B1 `4 D: A$ H
super(aZone);
2 s7 ]8 I" y* o4 e* g( i; h( M list = new ListImpl(aZone);0 Y+ T3 {5 J: {- X5 N4 S" v
swarmSetp();* n8 Z2 K' e/ k8 b
actionGroup = new ActionGroupImpl(aZone);7 H5 H! V5 j4 \
schedule = new ScheduleImpl(aZone);
' q% ?1 d$ r6 P try {* r6 X' ?& D8 u+ ~. J: K
Selector agentSel = new Selector(Agent.class, "agentStep", false);
! a, Q) E7 p. c. S8 V Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 ~, _2 Q6 R0 } |6 P- l
5 K9 c$ u. v% O7 O actionGroup.createActionForEach$message(list, agentSel);# ?* T9 e7 a% N* q- `! |/ c
actionGroup.createActionTo$message(this, swarmSel);
) N U! H# y0 y4 G3 T1 H schedule.at$createAction(0, actionGroup);
7 U5 q+ P% N7 D# d/ B2 [! _; E9 h0 M schedule.at$createAction(1, actionGroup);
4 [' k( B( a. N8 G5 d# F9 a schedule.at$createAction(2, actionGroup);0 [& H6 R( B; K& p( [3 O3 c
& Z9 z+ Z' \. o4 @# E3 n
} catch (Exception e) {
0 \- A4 M( W M$ b- }& P/ u" s e.printStackTrace(System.err);# k+ Q! }" O1 r
//System.out.println(e);% l3 ^: {( P: u" h9 J& {& C
System.exit(1);
# U5 F* `) Y7 N7 O; Q4 j }3 z/ _# j5 P* l
, ]$ ~9 ~9 b9 C% O! D( q! x2 |
. P f( ~/ v a& B }1 f3 V) V1 o% W
5 j" K# k# q/ l/ V7 Y
private void swarmSetp() {/ B* U* d3 r/ d% o
list.addLast(new Agent(Id));% \& }7 X! p) I, n
Id++;
7 c: l* g+ B; M' V7 z6 y }
% H9 f* f" w3 g1 s" f3 s) p1 H7 e) I! D
public Activity activateIn(Swarm context) {( @2 L9 f* g" w ^6 b
super.activateIn(context);/ t: G9 y0 W. b3 }
schedule.activateIn(this);3 N( c9 g/ O! i# ?" M
return getActivity();
: s: N& T8 `9 `( g" D7 F }
, p U. [: q- Y$ g) b2 a, N9 d J" `6 t/ R
public static void main(String[] args) {
4 h8 g* H8 o3 p Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) E9 M$ e, p6 N. [8 p) {
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 D9 I; ]; W$ V: e9 h& d: v swarms.buildObjects();( L- g- O0 g; |; L+ Y( J
swarms.buildActions();0 Q! I7 H; d( q& y$ I
swarms.activateIn(null).run();: p2 f( e) }. X! p
}
& E9 J" K9 J+ h, Q
- P6 t* Y5 }; [1 d K/ S( O) N} |
|