|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
I7 U; d3 ?+ `" Y$ w# V2 i! }7 f9 e2 w. j8 t+ x% W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) Y1 V! _% g0 Y! T0 [2 w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& p9 d' ~4 y0 r2 x t" J6 pswarm.SignatureNotFoundException( W8 @% a+ T# G" y7 l
at swarm.Selector.<init>(Selector.java:76); e' L2 ^% S" }$ q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37); A2 Z$ U! f8 q/ h3 h
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 j5 A. G1 W9 z8 o1 A! c$ A
$ b* ~* T' g5 B* [( Z, e
+ Y( j; K! ^( B9 P+ T. `/ m) Gimport swarm.objectbase.SwarmImpl;2 w2 m- e- E& W: D& U& g
import swarm.objectbase.Swarm;
) g1 f& e Q3 y: r Iimport swarm.activity.ScheduleImpl;. K4 }& Q% L$ R2 _" X
import swarm.activity.Activity;
4 d' p7 m! R0 Z' d2 R" dimport swarm.activity.ActionGroupImpl;& h; b# D$ d& c" S8 {' c* ~0 ~# g5 m
import swarm.collections.ListImpl;8 T! J2 N! H! s' d" r. ]: B
import swarm.defobj.Zone; 7 `& \3 P$ h- {! c/ [
import swarm.Globals;, O) c7 W* I0 I7 c T% d2 n
import swarm.Selector;
2 i: Y: k9 B3 ?: U, Cimport swarm.activity.ActionGroup;
5 Q( N q* C; A0 g% j4 @/ W: J! Yclass Agent {
( }1 W* a1 W8 @7 @+ i char id;; M" Q9 O3 }, C" T4 E
2 E, L- o) Y2 \' I1 B! I Agent(char id) {8 s& o' P3 d3 X5 S# T
this.id = id;# Q2 B. A( m* U+ h4 w% }" b
}
0 y( n+ s( w3 p: x/ [$ l$ J8 d. p: y3 X) @) W- C. A
public void agentStep() {+ e/ _ M* v! T5 V
System.out.println(id + ":" + Globals.env.getCurrentTime());
, j0 P% n$ }0 W }
8 V2 D- r, v( I$ |8 u}: W2 d! w' p0 v# R' X, g9 G4 @
- o) E n0 F X$ {5 F
public class ActionGroupDemo extends SwarmImpl {
0 B; C9 J! p2 z ScheduleImpl schedule;/ P0 L+ N& l+ n% y3 Y8 N
ActionGroupImpl actionGroup;
0 d2 Z$ ~9 @+ {: H ListImpl list; x- p/ m( V2 P# |' _4 y
char Id = 'a';6 b! ]7 m9 n7 ^( d# D8 E
# J, S! X& z0 E: H: ]- d ActionGroupDemo(Zone aZone) {
6 C- e" ?, G( [5 T: h super(aZone);
& E% F; d1 H7 l list = new ListImpl(aZone);! A% A3 h9 e/ ^. ^* B6 n/ Z
swarmSetp(); A9 w: A7 E1 V' y1 b, I5 q D3 B
actionGroup = new ActionGroupImpl(aZone);( a4 I& r5 q" A! _' H5 Y8 K1 p
schedule = new ScheduleImpl(aZone);
( `" C1 v* L. ~ z j2 X try {% f) \& z. V+ q2 |% l- z' X$ e
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ B. b' [/ E u. d
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& V! f) G- w( P& J& w3 B
$ ~! d% C. J. i' D7 }. l5 q actionGroup.createActionForEach$message(list, agentSel);% T& L# E/ |; s
actionGroup.createActionTo$message(this, swarmSel);
" e2 s* M' q3 V; ]& O: H+ \ schedule.at$createAction(0, actionGroup);8 D+ b/ Z- ?5 I) M8 q9 o; \
schedule.at$createAction(1, actionGroup);" M2 o2 A( [4 R( f- S
schedule.at$createAction(2, actionGroup);& R- Y0 @' k3 e' m
' G5 z* a, C4 {/ L$ | m6 ~. j4 [# D
} catch (Exception e) {
( U8 D. e: J) A e.printStackTrace(System.err);7 K9 ?0 C; s9 h; g% Q" N% {
//System.out.println(e);' P' U- ?# P5 Y
System.exit(1);
9 G2 g8 ]( @, W. A( ` }
( _; Q- @: a3 L0 |8 R( b' ]8 j- `2 O4 ~0 Z) |$ @6 u9 n2 {
) h1 V9 O5 B8 v5 X4 P }
. r' |3 |4 r' w2 E! N
$ j- u: E5 X( N; a private void swarmSetp() {# T# ~5 |1 C' w; d2 v+ P3 [7 d
list.addLast(new Agent(Id));
& Y0 x1 |/ D6 L7 V' I0 x8 }4 } Id++;
# k% [& B6 t% B1 G/ e0 ? }
9 g& V4 Y) r$ f8 \( \4 C |1 s
) T, L& E) V9 F- u( | public Activity activateIn(Swarm context) {
" |" k \7 m8 ~. u& O super.activateIn(context);' r* u) N& b% O+ _. f% h; p2 v
schedule.activateIn(this);
, [% t+ D7 _/ ]! t4 L8 U: z9 P" k return getActivity();
# p" M9 @8 E( @ }
' B8 }9 \8 u8 U8 h9 l+ ?- B
0 {9 d- v& n6 e" {, }7 C/ a public static void main(String[] args) {
# ]+ t9 a" p& q, b7 A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ R& C O2 a$ X/ g7 `( q j
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! q/ A; x* a3 e9 `
swarms.buildObjects();
0 D6 }! _! t' t/ {0 E0 N0 Z1 C swarms.buildActions();
2 z8 [: P, P4 m4 b/ f1 X% k swarms.activateIn(null).run();' J" H( H+ ~4 l1 g
}7 d$ \, W, V5 @, R( e) h
0 s* Q5 _7 a& |8 s8 I1 F* N( v
} |
|