|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ |$ r4 {* v* m5 ~
# N4 ?2 N* ^2 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* Y# C% @# q8 S
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 J+ t! l& }/ s5 e0 n0 |- j# p9 N
swarm.SignatureNotFoundException) f9 x8 N/ b. |, D$ y: }0 s
at swarm.Selector.<init>(Selector.java:76)" R. e) d$ X6 m; X- K- M" l9 e/ @; ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ T6 L9 t4 h5 i+ q4 K6 J, `0 x
at ActionGroupDemo.main(ActionGroupDemo.java:67)
* o) I8 D; }5 u+ Q! A
$ k) _3 ~2 [1 H( O. {8 Z" y6 `. S8 ^& S1 I, S m
import swarm.objectbase.SwarmImpl;
" |/ n# v4 m+ O1 [: G5 u3 Himport swarm.objectbase.Swarm;
, H: u" H. H9 \/ e$ Nimport swarm.activity.ScheduleImpl;
- p9 s/ E3 U& G: U Qimport swarm.activity.Activity; N4 v. T W& L- u" i% ^
import swarm.activity.ActionGroupImpl;' G9 T& d2 |* W+ M
import swarm.collections.ListImpl;8 a" ]. x3 x# V/ T0 k4 J2 D
import swarm.defobj.Zone;
/ _$ A0 R$ J% mimport swarm.Globals; o/ _7 f$ @' w- R- ?0 D& _
import swarm.Selector;7 J. i' [% }# `+ D. m) [
import swarm.activity.ActionGroup; % o- M" X7 G$ g6 Y. ]
class Agent {
( K. F2 o8 I. K$ u char id;0 T* }9 V3 E* e0 o8 p3 {+ e7 Z
, D; u& w! w$ Q
Agent(char id) {- q0 T/ l, }' T; H V0 T' o
this.id = id;8 \; @, p9 }+ O3 n
}
9 S& O. s5 j/ D. h
! X! z5 }) ^: F! A public void agentStep() {
6 k! M7 w& P0 D System.out.println(id + ":" + Globals.env.getCurrentTime());
% {# r. p$ j, H I+ F% a }: o! I9 U& O1 N9 `# ~
}! s. |4 p) E/ @0 D$ M% v
& y- C- z+ M& ^) ~& Cpublic class ActionGroupDemo extends SwarmImpl {
, Z; L( G6 Z' V, f5 [ ScheduleImpl schedule;9 U' Z/ a e/ |4 E/ G7 P; i
ActionGroupImpl actionGroup;
& c2 g/ ^' {3 T% _4 a5 d! Z ListImpl list;9 L# D6 k8 R0 S1 K
char Id = 'a';. t$ y$ f6 A, S* R! ?7 X
/ Z+ W5 P8 V+ T* f8 q ActionGroupDemo(Zone aZone) {
8 u/ f: V" J1 \0 V( ~5 c2 c7 q3 N super(aZone);
/ F, f9 m- Z. Y: F0 `% e list = new ListImpl(aZone);
& W' H- {. S# Y* ] swarmSetp();3 i# h# g0 T3 O/ }5 Y, p$ w+ l7 u. K
actionGroup = new ActionGroupImpl(aZone);4 K9 d, H/ i# G# p1 @
schedule = new ScheduleImpl(aZone);
# u5 D T h. ~' `2 p8 b try {
+ ^* u: }4 k1 y% \ H* V Selector agentSel = new Selector(Agent.class, "agentStep", false);
) f9 w7 B5 @+ X9 j+ ]8 p Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! U' v; X8 V4 C* @$ |
5 L* |& a% t4 x actionGroup.createActionForEach$message(list, agentSel);
8 F, X2 a# X8 _2 a$ }5 K" _. T( X actionGroup.createActionTo$message(this, swarmSel);6 B3 s3 P& ?2 d% W5 x* v, m
schedule.at$createAction(0, actionGroup);7 J; U% [( g, s: c, e$ [
schedule.at$createAction(1, actionGroup);
! R; l& `4 D0 ~9 P5 r8 u schedule.at$createAction(2, actionGroup);/ D& F: H" z; d6 L X* l: P" ?
3 k7 D0 y9 S! r% \6 N U# O } catch (Exception e) {
$ R! J9 O4 \0 ?$ L- `' n e.printStackTrace(System.err);
/ v+ X/ ?. E0 j& c //System.out.println(e);
5 Z1 B, v. f1 a$ w8 y, O System.exit(1);- G; m2 u/ P3 R: b: d
}
. j5 R/ X9 W1 I4 S" L$ F; M
, H/ Q* y+ i/ i$ E4 [ B* H7 _2 O7 ~3 w5 U5 i
}
' x( h- r( a0 W. `9 n [& p2 O
# O# Z* s8 x# {+ j private void swarmSetp() {
" Z4 P8 Y! R$ m, C8 c) s1 y7 `6 V list.addLast(new Agent(Id));) q5 @( d- F; d+ N9 ~
Id++;
7 G' w+ r! }/ Q1 i2 C6 s }
- k. s7 O5 {8 d; A& v' @ h, q' f- x. I* [5 L3 a$ e
public Activity activateIn(Swarm context) {9 {+ \" }7 M( @) p
super.activateIn(context);& H! g. e, C* w7 d, k+ n4 j
schedule.activateIn(this);3 @& \/ {/ z" P" k
return getActivity();2 N) T9 B F, |7 D1 f
}6 I3 g2 Z" w* V) R% f! G3 I
3 F w5 h9 R/ J, ?
public static void main(String[] args) {
* y/ D/ Y( f& F0 o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
_, i7 E, ^! s; \( }' I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% o: L7 ?. z* A+ j7 J
swarms.buildObjects();0 S4 N( X) x! o& ^. c6 c
swarms.buildActions();
+ ?& {& k. h4 a4 ?; J8 V swarms.activateIn(null).run();. {) ?4 m8 @0 s% l7 ^( ?
}$ ]6 ?1 y! u. P* x5 T6 K4 f
( e4 I$ }3 q- }! J8 ^
} |
|