|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( N0 \" t) G/ E3 b/ o1 D
) t+ \0 F# f7 {; ?' ^7 v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; w+ Y3 z) {& ?6 o1 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# E$ }- p/ M- K+ G, _: t
swarm.SignatureNotFoundException; u- i( n( ^( E" x% S
at swarm.Selector.<init>(Selector.java:76)3 _# g& u! H- f. k) E8 \
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! O' u( g$ X2 C at ActionGroupDemo.main(ActionGroupDemo.java:67)
( @+ F( ]: u8 d4 q) j/ ]) Y( M1 A; a" I/ Z) X1 }7 F, B
+ E7 u/ g5 A; p+ C- e! W
import swarm.objectbase.SwarmImpl;( L" W% q$ n- ~. `1 Y8 k
import swarm.objectbase.Swarm;) @: S0 f o% y: W' F' ~& U4 g
import swarm.activity.ScheduleImpl;) c, N3 A) \5 Y7 v, d ?# _
import swarm.activity.Activity;
; u4 V+ T# g! r( ^* K" o) bimport swarm.activity.ActionGroupImpl;/ }" J0 @% s3 ~! R9 z% \; b1 G+ ?
import swarm.collections.ListImpl;
8 n. K8 ^" h6 x' s/ m! Limport swarm.defobj.Zone;
! G8 n5 \0 [ t4 eimport swarm.Globals;
7 _ B6 c& z7 r8 Q& l" @, d$ Vimport swarm.Selector;7 f* f' v: j A l, J; m$ Q. P
import swarm.activity.ActionGroup; ( f) U# e% W4 T, M0 Y
class Agent {
6 f/ J2 N# P7 u, n1 V1 h char id;8 o1 z) y+ e' {
@7 l; v: w/ u& {& ] Agent(char id) {: U9 _ J! c; O7 ]
this.id = id;
. T) Z( @: c' G f* t( c4 M: T }
7 A8 N3 \9 ]% h; R
, I$ b' ^8 s! b% U6 \8 ^6 X- P& k2 D) ? public void agentStep() {
8 ?" K% `; e- e. W: x u System.out.println(id + ":" + Globals.env.getCurrentTime());& p( D* Z( A% h( x5 p
}
8 c' [! v' A# [# o}* y6 p. w: I. ?' J3 ]
" V5 e9 P% t' Z! A) O* xpublic class ActionGroupDemo extends SwarmImpl {
. x3 ~% ?( s0 B- u ScheduleImpl schedule;1 c' i# C! X' ?0 G& y9 N, p! g3 \& o
ActionGroupImpl actionGroup;
1 y# ?( Q7 o" W& K. z ListImpl list;; W& Q6 `( o7 X+ S- C8 g7 X0 c; X
char Id = 'a';( e7 e E) ]9 t2 r+ ^% r
3 ~0 M/ \- I8 ^+ H- `: x" G: o* x
ActionGroupDemo(Zone aZone) {3 o0 p- W0 d3 z4 s5 c( w
super(aZone);
7 V7 t" I. T3 b$ t2 ~& A+ s list = new ListImpl(aZone);
! a# i5 ^- z. g/ f, O% j0 {( g swarmSetp();8 h' F. L1 ~: s- `1 y2 m" _ p
actionGroup = new ActionGroupImpl(aZone);& {1 b0 N; P; z3 f7 _/ l. V* H
schedule = new ScheduleImpl(aZone);( G, ^- b4 I- o, M$ V) C7 a3 b
try {
# B7 J Z) W" [; Y% c% f Selector agentSel = new Selector(Agent.class, "agentStep", false);* f/ {* H! w; X' V; g
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
U9 U0 H2 G- `) S% v" E 8 J. _5 \* V3 z$ t
actionGroup.createActionForEach$message(list, agentSel);
* y8 U- f$ c. o4 C$ T' m U actionGroup.createActionTo$message(this, swarmSel);3 H! L/ V* P w
schedule.at$createAction(0, actionGroup);0 o8 ]$ b0 @8 U. \' h
schedule.at$createAction(1, actionGroup);/ E0 e/ R6 q1 ^ a
schedule.at$createAction(2, actionGroup);
3 L, A' g5 k- A0 s+ P+ }5 t3 P' C% C5 Q7 r& B4 [
} catch (Exception e) {7 J% P: ^1 K6 R3 [) W
e.printStackTrace(System.err);
2 |) ?3 }+ ~; @1 T //System.out.println(e);# t }7 v. u8 C; `, F
System.exit(1);
+ D% m7 h5 s+ h. N. ^; W }% s1 I/ ?! @6 T v7 s
1 G; H5 K/ Y) c+ S5 u# V
1 N5 e5 _4 o/ |6 r% v- n }# E3 c/ B( I& n' @* [/ g
" N8 L- |) r8 w# U
private void swarmSetp() {8 ^+ N* q* U( ^+ k( f
list.addLast(new Agent(Id));+ _8 U! I: f# k6 _0 {
Id++;7 b1 U) g5 ?0 }* L: Y; U
}
4 `: E3 o& c" k' `3 O* O
2 `/ K0 {& c1 A, b! z3 P9 L" w public Activity activateIn(Swarm context) {
. z/ V% c! Y+ R! P. x$ y super.activateIn(context);
& C5 h2 W ?5 O schedule.activateIn(this); E* a" r) _4 U' [! ~6 ]' X+ [: y' d9 {
return getActivity();
# \+ [% n" w* y9 y$ s1 S; m8 G3 @ }' h: X7 L# X. K
& b, G. @! @% P+ T" |! {3 | public static void main(String[] args) {
- \, `1 q0 Q3 w4 a' @ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, q$ D) `$ e4 p+ N4 U
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 S( E( |. e6 }9 w$ X/ c8 {& O, u swarms.buildObjects();
) G/ ^, _4 @& `1 H4 }0 y swarms.buildActions();, S# x) G( ] [& S
swarms.activateIn(null).run();" D% g* H* U; i! @2 l6 Z
}. f! k: u# ^9 j% Y6 P& @6 o
0 L4 p5 m3 t8 |8 s
} |
|