|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% d1 H5 `1 z8 i4 U2 @- I% ~' X# P( R: h7 V7 w; [* Y z3 ^/ s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 g e; X/ V+ g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! r+ K9 J# g/ a+ L, r I6 S" F
swarm.SignatureNotFoundException
* M: ]. k" |, X: f9 E! Z at swarm.Selector.<init>(Selector.java:76)% C' r- `. F" `/ \" T' _8 Y& }
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 e4 P5 b2 ?1 ` at ActionGroupDemo.main(ActionGroupDemo.java:67)
; j; o% }$ x3 Y9 i, |, @7 F" y3 |! ^+ E; V# {- O; f
8 |! b; [" h% \& R: O2 g" c
import swarm.objectbase.SwarmImpl;
, Q" s9 L9 |; m6 z5 L0 c7 vimport swarm.objectbase.Swarm;0 X" Y# w" l6 ` [; Q7 V
import swarm.activity.ScheduleImpl;( Z" F) n& c+ X
import swarm.activity.Activity;
% L6 M0 p4 C+ b5 jimport swarm.activity.ActionGroupImpl;
5 z$ V$ l# A' Z" `% Himport swarm.collections.ListImpl;
* M0 }- d0 k7 _- [/ f( D8 \% Aimport swarm.defobj.Zone;
# u, P3 I4 x* j! c& Oimport swarm.Globals;! R7 H9 D/ p$ `$ h _
import swarm.Selector;
, R$ `" K1 p* U0 s1 }import swarm.activity.ActionGroup; + O, z8 L) ~2 D) W) ~
class Agent {8 a7 ^( C4 l; R7 G7 d
char id;
; Z; E, S# h$ ?% X9 W$ [" D# c$ L# K: n
Agent(char id) {
9 W# Q+ ?+ O0 _8 \0 j" s) w: } this.id = id;
9 ?5 [9 G8 U8 l% t }
7 U8 k& I" o$ q1 ?0 G4 ?& p3 X9 j
( G ~2 p8 e2 j5 z e& Z) v public void agentStep() {$ ?7 f9 C/ f2 H: s8 @7 Z$ U/ A
System.out.println(id + ":" + Globals.env.getCurrentTime());
4 W8 `3 x* ?* L1 Q0 M N) ?0 b/ d }
5 B9 s( z) [+ C Z% E7 P$ H; M}. S" I) s6 w2 K8 ]
3 I( k5 o/ q) h; U6 u
public class ActionGroupDemo extends SwarmImpl {
2 Q0 q k) X: y- ^ ScheduleImpl schedule;' S$ D6 @( Q! J) Z ^% P
ActionGroupImpl actionGroup;
* ^2 B; I) U! f8 j) f4 V ListImpl list;" r- E$ I1 _! ~! F. q+ g+ W u& R
char Id = 'a';3 S O4 v; R/ W# t% ^ p7 T
, z% @; y# X$ M' a' G ActionGroupDemo(Zone aZone) {' t) {/ K e" X0 b3 |) H) y4 e
super(aZone);! x0 g) a- B! t
list = new ListImpl(aZone);
]9 d, c3 f7 a( S& K swarmSetp();
! G) F, m* |. P) X( k$ q actionGroup = new ActionGroupImpl(aZone);3 N/ A. ?5 n% Y' Y9 c, @5 z
schedule = new ScheduleImpl(aZone);
" ]2 ~; a$ ?3 E& `1 \/ C2 ^ try {. m6 V. h$ G6 |0 ?$ ?
Selector agentSel = new Selector(Agent.class, "agentStep", false);
: t% I U6 n* S: O% q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; A. A( s% X* @/ U! c( \
. b+ g5 z/ z. g! \ actionGroup.createActionForEach$message(list, agentSel);, G% R8 `; F+ l% x3 p
actionGroup.createActionTo$message(this, swarmSel);
: R0 I" F- E; i- o% \ schedule.at$createAction(0, actionGroup);
* Q: n$ U" e2 B' D" |# q5 _3 ] schedule.at$createAction(1, actionGroup);2 x2 [! F9 V) j' G( s/ v0 Q8 \$ I
schedule.at$createAction(2, actionGroup);: i7 }) k6 x5 g2 u- b ?
5 \( _4 S5 B+ ?8 ?: E
} catch (Exception e) {
3 {! o4 e; d+ v6 l2 y P e.printStackTrace(System.err);) e- V+ |* d- o$ s# z
//System.out.println(e);2 k6 f3 I* t4 R, l' p
System.exit(1);4 \ q2 J* j5 \; G# A$ d* R- @5 Y5 N
}
* r7 s0 F* i: @/ x) Y& d; r3 {: u# i
$ A* I. ]7 z. l$ k: ~ ~, X# k }
- H$ _0 o) m. G
' ^" R- v7 z6 c( n3 Q private void swarmSetp() {
1 j: \( O$ x, [. d% F: r5 D2 l3 Y1 y9 m list.addLast(new Agent(Id));
% p, _" r6 p9 l8 q4 a5 K Id++;
% R# R S2 u6 V( W }
9 i% |5 G+ N- C2 P+ Q7 W! Q
* ]/ v! O* e* ~ public Activity activateIn(Swarm context) {
2 { c1 x# _' y, s1 e- L4 H super.activateIn(context);
" _1 g; B7 x* B( K& [5 G schedule.activateIn(this);1 Z$ E: R2 Z- S7 d: p
return getActivity();1 d4 M+ u; l+ P, n% `2 i
}" g; h$ N! ^ g6 e; g+ X1 }
9 W- z9 h# W6 y* @ public static void main(String[] args) {
7 W* b1 J B+ q2 D% z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- r6 S0 O d. B* T* ]0 @ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' m5 H% E! l5 B
swarms.buildObjects();
4 R+ |& S* H! v( f swarms.buildActions();5 ?$ e3 S8 O2 ~0 q5 |
swarms.activateIn(null).run();
: Z4 L* G* }3 Q! h+ E }# @& U& Q; u, C- u7 T: d5 I8 N3 a9 i
0 z6 o0 [& h* `
} |
|