|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 I# s& N. \3 l' i/ o5 [
8 x. J0 G: ?4 b2 [% X2 }# e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! y5 q7 c5 ?7 b3 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( l2 k5 L/ S- Y1 T9 c6 |3 x6 E) g
swarm.SignatureNotFoundException
3 r3 _0 G3 a9 c+ e; c8 x2 b at swarm.Selector.<init>(Selector.java:76)0 Q6 p$ B' `9 p" H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: D! [# L3 P* B( @ at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ o+ m5 q4 \( q" U# r
4 p; |; a0 ^$ X! u6 V. a$ J# Q6 c/ u4 l+ F! m7 u3 [ B; c
import swarm.objectbase.SwarmImpl;! i2 j1 L: I' `0 O( H% z9 H
import swarm.objectbase.Swarm;
1 Q1 m4 q4 F3 c- d5 q/ d T. zimport swarm.activity.ScheduleImpl;
/ J4 d) X4 d" O, Y1 D v, l# qimport swarm.activity.Activity;
5 [% t, g! @ D1 R6 S! q9 Qimport swarm.activity.ActionGroupImpl;+ A# O, Z; u% w7 z3 t+ x
import swarm.collections.ListImpl;
$ o0 M P5 W% F: timport swarm.defobj.Zone;
; G# i& {2 L* r( H' {6 ^! q4 ~4 yimport swarm.Globals;% `: L/ q8 f, g# v
import swarm.Selector;
3 q+ u- \9 m5 W3 f$ Q+ H- uimport swarm.activity.ActionGroup; : v) g2 @5 B: S0 w" v$ p- z
class Agent {( Y5 o3 \' Q! R3 V4 w' ]
char id;& L/ V) G( n' T( q
. q# ?# f7 ~. d/ k! X
Agent(char id) {! h& \; o+ l E5 p
this.id = id;+ P7 ]8 k! t0 {( ?5 W9 G/ U
}( u4 h7 T6 r8 Y+ A/ T! b7 m. E
D+ g& _; w" Q* H3 s
public void agentStep() {7 Y% a- E" p+ a
System.out.println(id + ":" + Globals.env.getCurrentTime());1 l! t& @! m7 l, N" O4 |
}
5 ]& `( \/ f9 S}+ `* G6 X6 Q- }8 H$ E( J
1 D8 G& W2 ?6 Gpublic class ActionGroupDemo extends SwarmImpl {
9 I6 s; P" X1 ~5 z3 s ScheduleImpl schedule;2 f1 g/ r5 d% F
ActionGroupImpl actionGroup;1 h1 l8 [6 V$ Q% r W
ListImpl list;
8 K2 E& `: F: y4 S2 Q6 N9 x8 w char Id = 'a';
$ |# q/ Q/ s# ~$ P7 q! L5 f" h
/ W8 t K! t! W9 X. T. r ActionGroupDemo(Zone aZone) {1 |7 ]5 `( G) |% M9 u
super(aZone);. U/ m+ K, q8 Z7 @- U
list = new ListImpl(aZone);
: _5 f1 S: l+ A- j, l5 N: C swarmSetp();
5 ^" H/ u( F( X% |" m2 r actionGroup = new ActionGroupImpl(aZone);
& P4 c, ?( U( [3 O) i schedule = new ScheduleImpl(aZone);0 ?7 F/ L% p4 E
try { ~1 N2 e. ?" P' x& L$ ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);" i ]. Q: X4 ^5 L" ^5 O* W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ T8 S, o/ q- r. b! [% ^* ^
7 @* P6 T* p/ j3 W actionGroup.createActionForEach$message(list, agentSel);. r0 s: n; W% d- @* S" r
actionGroup.createActionTo$message(this, swarmSel);
$ n. d; m2 r0 K schedule.at$createAction(0, actionGroup);
! N; G" A( ]( u& j" ^ schedule.at$createAction(1, actionGroup);
( w2 x8 g3 A- h% l$ {9 p schedule.at$createAction(2, actionGroup);
- }& }8 t2 [% p0 r8 O: W( @/ C [% d t8 m" s8 k
} catch (Exception e) {
% f! P. i1 G; z+ e) F e.printStackTrace(System.err);- N# b/ J6 p$ B! f% w" g6 G |5 v
//System.out.println(e);
" d% D: n! D4 H6 i- V System.exit(1);1 H, F* d* T% C- L$ T
}2 d0 M* k& ?$ A" ?
7 x5 v5 G8 O: e! j9 u
+ ~9 \" f L( I T
} ~, P* @& W, A9 w4 r" b
- ^+ y' o. u! r# y0 u
private void swarmSetp() {: d i4 `- U9 V2 n! W
list.addLast(new Agent(Id));% L. v0 ]. c0 a4 m. z7 Y
Id++;$ s: j3 n* g7 S
}. Q) q6 {! a+ b% @3 [4 Z: k* b
- I& p7 y8 Q8 q: E
public Activity activateIn(Swarm context) {
# t1 J: Y$ K8 K2 ~' [" P super.activateIn(context);) \& I4 e0 c1 L y( r" y) s }0 G+ Q
schedule.activateIn(this);; y9 { {* j$ B8 C3 e5 x5 J
return getActivity();
+ T, h* U" V7 j# r' G& N1 F }+ a3 Z. D: L. X; O& u" _
! _4 B0 G+ ^& s6 J3 P8 X- X) c public static void main(String[] args) {
. Q- _, W, d' y' r% s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 T5 V0 l7 o- x6 `4 k7 S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% V" L6 [2 ?2 R, k9 G. v swarms.buildObjects();
# K. q! S0 ^9 c8 U swarms.buildActions();
4 ^# U5 t, H3 ^3 h' O" |' p) k swarms.activateIn(null).run();
) B9 W; W k9 O }; U+ s9 \' U; P4 m$ L+ x. S
. B: o9 y6 I$ X! y} |
|