|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" N/ z; I4 ?3 { e) V& H. @
' x3 h8 }, _3 c2 ]; J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" o) P8 L: a* G' X3 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ ^/ z) ~; O/ S ]/ y
swarm.SignatureNotFoundException
/ |: E" ^. F, ]. P+ T at swarm.Selector.<init>(Selector.java:76)' m4 ?/ j4 C5 Z: q0 Z' d" @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ N ~1 Q9 y1 Z- Z* p at ActionGroupDemo.main(ActionGroupDemo.java:67)( v7 a) R/ \* i& c6 b
* C4 S( l4 M& @# v# J" q8 E. d, |/ J
import swarm.objectbase.SwarmImpl;1 U" M: Y7 j( P) ]& e5 _! _
import swarm.objectbase.Swarm;
4 O$ d. Y- z: q& e& E; N, limport swarm.activity.ScheduleImpl;
, p! [: q& |5 R' W! B0 t O+ Fimport swarm.activity.Activity;
4 B; T& I) l0 B) u; Ximport swarm.activity.ActionGroupImpl;
% r4 a: M W2 h" b$ E- j' A; Wimport swarm.collections.ListImpl;; X- I5 I" W' W% z
import swarm.defobj.Zone; . n$ ]. U. f& ]* S
import swarm.Globals;# V6 s) B! i& o9 Q' u% r* s, }
import swarm.Selector;' L6 @8 p" r; Y @
import swarm.activity.ActionGroup; . L* h' ~/ J) C& G
class Agent {1 t5 f: g7 [) z1 s
char id;
- I9 ]6 |8 E- s; A4 X% q0 s
! n1 N( a) I" }9 f& G/ m* P Agent(char id) {/ C o9 t6 n9 l
this.id = id;; {3 ^1 c" q4 m4 f9 e
}5 M, m( l8 @/ H9 k0 |
1 s" X5 G5 e0 l! R1 c6 v( j8 w5 J& `9 x: t
public void agentStep() {. |- X/ u- H9 a
System.out.println(id + ":" + Globals.env.getCurrentTime());
2 x2 g7 ]& l& }2 f }8 D7 J8 m" ^2 Z {5 v+ a2 p! s
}) l% k2 b4 O8 a9 r1 ^
8 Q6 E' m- m8 A
public class ActionGroupDemo extends SwarmImpl {
- f* {. b8 d" G9 z ScheduleImpl schedule;9 Y& G/ j" |" b8 n1 \" e
ActionGroupImpl actionGroup;
/ O# F( p' f' n4 O' w ListImpl list;
+ f1 P" f0 ~8 c0 [. m char Id = 'a';$ c! v7 B/ [3 K! E
6 w, q4 F/ v+ T4 B
ActionGroupDemo(Zone aZone) {% i; c: O3 ~3 A% W( \- E
super(aZone);
1 O8 [# K4 c" ]$ u list = new ListImpl(aZone);
6 f& H- m& G0 ]3 ~ swarmSetp();
+ l, V8 P6 u& b1 | F actionGroup = new ActionGroupImpl(aZone);3 T4 a3 G2 c* o$ b; `- d
schedule = new ScheduleImpl(aZone);
" X# M+ A2 ~& s. u+ @) A+ s* x try {! d. ~8 b7 | i6 K: w0 Z; J
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& q9 }( }, Y2 f* s+ ]5 s, N$ S Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ V# H" ]( l& e L) X8 X: r 3 @2 j1 f$ n, ^) |# E; U8 I( r6 F
actionGroup.createActionForEach$message(list, agentSel);3 f5 P$ H9 \, w8 `9 k! F6 B3 J
actionGroup.createActionTo$message(this, swarmSel);- }2 Y/ ]* q$ P) j
schedule.at$createAction(0, actionGroup);
. b6 }; F4 K! L G0 n( P9 i8 ~ schedule.at$createAction(1, actionGroup);
, F( {8 Q( ^5 q% ]+ F3 y schedule.at$createAction(2, actionGroup);
4 G, @9 N4 }5 X% \ T' c6 \4 h7 `3 s. D+ f* F: b% _% v8 \
} catch (Exception e) {1 J9 g# m9 b1 K+ B5 m8 O. m
e.printStackTrace(System.err);# ~4 O; b9 [. }
//System.out.println(e);
E$ }0 j' ~3 J8 X System.exit(1);* C- o5 b" Z1 w5 j7 N, f; c
}( c# o. c& w5 L% }4 f
# a O7 p# Z7 S4 V& A6 ~# u7 A
: L X( K2 c# D/ m+ a
}/ \% m- z: S1 `2 @8 N6 ?! r
. O) t3 E, R, s2 j5 {$ q, |
private void swarmSetp() {
" r; P4 b% k# E% T( Y& L7 B9 F list.addLast(new Agent(Id));* h4 A' q5 B, k0 n# {$ o
Id++;, P, v7 f' g6 E2 x" y, A W
}* D5 C1 r6 t) V6 f
4 E9 Z; C; a0 `& ^) p public Activity activateIn(Swarm context) {
8 I4 `' x* d, [: ?& s3 C; H super.activateIn(context);
+ E X& \8 n7 n0 w0 L, l+ C% ~ schedule.activateIn(this);
: ]' }. P" L/ @$ T# f" x; ` return getActivity();
$ [3 y" l% Q* F }
/ M6 G* f1 [8 z$ I9 @( e# i H% Q6 ?( [' r& S$ S
public static void main(String[] args) {4 O4 W6 a. }- f$ S" ?& W& |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% Q+ ^6 X, x2 W) L6 S% a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 t# E# A1 ]' |( D# w4 Y swarms.buildObjects();
2 X6 a% R) b. P ^ swarms.buildActions();. y4 C% L! H" R8 k; b
swarms.activateIn(null).run();7 }" ^4 o4 ^9 A7 } g3 x: p
}
- A1 Z/ }. p8 m5 ]/ J9 V# J# U8 r! w, t8 j
} |
|