|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 J% ]' j; C; g2 [1 M3 U5 r3 T# i" e% K, u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) w& ^* r' I' O+ {, \% `6 R2 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) E2 k$ I0 B1 J6 K" @7 O* X* G1 Mswarm.SignatureNotFoundException: E1 y7 R0 W4 {. ~* h* Q+ X% x+ ]
at swarm.Selector.<init>(Selector.java:76)
2 y7 N' O. Y/ A, s M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 l- a7 ?* u5 N! Y% i! O0 {( O0 \1 d
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% W$ X7 R1 Z& ^! N( |. d$ M6 K/ T- k
; E9 U1 z$ H+ \, y, S8 z
$ y# A- A6 t/ t* b, b- Bimport swarm.objectbase.SwarmImpl;4 b1 D! V; k& \- P1 R$ k3 z
import swarm.objectbase.Swarm;
8 Z/ Q* S( f- y) d$ yimport swarm.activity.ScheduleImpl;
# l% @7 w& g# n" {' p8 ^# \5 v. Wimport swarm.activity.Activity;/ q/ [9 ?0 c& | u' i
import swarm.activity.ActionGroupImpl;
: [# B+ k& N! D) Q5 r' j$ N ` ximport swarm.collections.ListImpl;- h/ G- V/ |0 Q, l0 ^2 E# W! r! c
import swarm.defobj.Zone; 9 j0 q: f- i: r
import swarm.Globals;4 G9 {+ ^0 @: M6 ]8 A
import swarm.Selector;8 v" @6 n7 r$ x* e
import swarm.activity.ActionGroup; 5 F* |, U' Y* a8 {8 W* D3 ~
class Agent {
$ A) E( i# v* b. V char id;4 |8 a# y+ z; x3 Q4 K) x
n$ k# V. U3 Z, _4 ^! g4 q3 \
Agent(char id) {& Z8 m! G' s: |
this.id = id;
' e5 Y0 Z6 b& D5 _* \- d( }/ b }
& R3 t# j& R4 |0 K( }1 ?
: S4 f% N Q$ ~0 M) F( Z# o public void agentStep() {
" q# f m, ^& B5 Q4 L% N2 Z System.out.println(id + ":" + Globals.env.getCurrentTime());
4 J7 |4 U. v8 s: Z: w- h }
/ l9 E7 n6 c( k0 n3 A9 P) w}- d5 j) U3 K& p5 A; f @# p
" S# F( _3 d1 t( @( I, hpublic class ActionGroupDemo extends SwarmImpl {
' z. a) I0 k" h& r. P3 _ ScheduleImpl schedule;* X$ O7 F% M; K; Q2 Z
ActionGroupImpl actionGroup;. T) Z2 F6 X N- S
ListImpl list;6 Y+ L) o$ e% V
char Id = 'a';; x1 ~& b3 n+ j
( s' \, I( Z- d! ?$ P
ActionGroupDemo(Zone aZone) { k' @) y3 T3 ~2 w% }
super(aZone);
" ^- r x; w7 z' }* @) t. r list = new ListImpl(aZone);
0 m1 T! }; ^, G) I J+ X0 k2 x swarmSetp();# R) g0 a0 ]; x9 `: B
actionGroup = new ActionGroupImpl(aZone);
4 {# d M3 k- ?( ]) P6 D schedule = new ScheduleImpl(aZone);, b) ]2 @/ O) D) [
try {
) s- P+ p. Q" k Selector agentSel = new Selector(Agent.class, "agentStep", false);: r0 j+ D2 D) |! M9 b( p& n: G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 L/ W0 |: v. x$ S) j* `. _
* }7 r! N' l4 y actionGroup.createActionForEach$message(list, agentSel);
" y& b$ q" D. {0 \ actionGroup.createActionTo$message(this, swarmSel);
! K4 @. d" H# d; c6 \' f4 S* W schedule.at$createAction(0, actionGroup);
3 t+ |1 z6 L c, Q/ D- { schedule.at$createAction(1, actionGroup);: M1 i6 i3 j9 g4 H u0 c ?
schedule.at$createAction(2, actionGroup);
) E5 f5 v/ E5 x$ v8 h3 D
~( l+ m% j. C: d# ?8 b) U# `7 f# J } catch (Exception e) {
, d' b0 v2 U/ U) \ \8 k e.printStackTrace(System.err);6 n0 @* O w! J
//System.out.println(e);( c9 i V7 K7 T" b4 M/ e. H
System.exit(1);
* u8 A5 m: b3 J; @: d }
# i. J% b0 ~4 x8 q( A2 Y7 I/ w( p6 L, |2 W/ U% }3 d7 \" \
* {; r' l3 m- v- \
}, T; B, ^0 @- [4 \
+ ] y( {" [& x, _1 K
private void swarmSetp() {9 S* e% E9 ~! R; y
list.addLast(new Agent(Id));
0 s; p: w% v/ x) r- m Id++;: l& v) L( e9 K5 n
}- o: d# ?7 N M. p6 `8 M
& N: N# x9 x, R# l4 ~0 B1 Z
public Activity activateIn(Swarm context) {
) N1 f. t9 m0 g* a super.activateIn(context);
+ b+ i9 L4 y2 H& ?: _ schedule.activateIn(this);8 k- ?' J/ m6 l2 f* j% {; t9 l1 x; f
return getActivity();( }, C/ U! F' J0 ?+ B
}
0 T% R6 b- U4 e: e, r6 Z: h! K$ N/ Z* @, n9 X% Z8 I1 }* R
public static void main(String[] args) { I3 m' d/ o7 w( K: `; X( M h
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& V" W/ \4 k. F7 t7 w5 `4 _ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* f/ t4 j% {/ g swarms.buildObjects();3 H: | F$ \3 J4 a
swarms.buildActions(); ^; v7 [3 }6 {! o7 Q3 u
swarms.activateIn(null).run();; |! _' W k7 b2 R$ b0 O
}
4 h# d% j, @- Q2 D
; z. {' S$ b+ l; N" J6 H$ ?} |
|