|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 z6 \, h4 P* M" c2 T: R
4 o }0 `8 S* S/ W' F* J+ `本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 b J% l: e. M1 K6 m7 n以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! S I5 Y; g7 Y8 _, [/ h1 ~8 S1 P
swarm.SignatureNotFoundException
, R! E3 d- m4 ] ^ c- X$ g at swarm.Selector.<init>(Selector.java:76)
" ~# f5 Q4 Z: e' M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 i) Q' {) B# O0 e
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 Q- p/ J- k8 _ ]* T [' \# D& f, |) O. l: n; P7 P
4 i0 J- t( n, }6 W+ E+ g, o- ~- ^
import swarm.objectbase.SwarmImpl;/ }$ d( S$ h$ {4 C0 D: V# C( t
import swarm.objectbase.Swarm;' @: a2 U' `" Z+ C+ F0 P& V' _
import swarm.activity.ScheduleImpl;6 O* g6 e! Y0 J
import swarm.activity.Activity;
6 I; \) v3 U" Dimport swarm.activity.ActionGroupImpl;
& Q. D% [( N$ [* |import swarm.collections.ListImpl;/ j' T" X& V6 y" ^" F% v! x
import swarm.defobj.Zone;
# X4 _1 K; `5 E! simport swarm.Globals;
* g+ R7 n$ ]/ B" _9 `import swarm.Selector;8 t! e2 b D4 I$ Y
import swarm.activity.ActionGroup; 1 u( y7 d; `8 @) Y& X2 T0 W( f
class Agent {. u' m4 [* I" u8 T% O& v$ z
char id;
) `4 D. u! I; |! I8 [/ F. v+ X3 J" M. u, N; _
Agent(char id) {; O& C5 }1 r3 s% o+ v
this.id = id;2 t7 E2 K1 _, Z& P2 R9 U2 u- |
}
^( Z: S$ Y9 B5 j' a
# o" R9 O6 m" K- I; n public void agentStep() {
0 a: W4 i X* N' E' ] System.out.println(id + ":" + Globals.env.getCurrentTime());
( A4 o7 j/ _- }: G3 A+ |( T u }
" h* Y! }8 ?2 H/ Q n}
: D4 m; r! V/ b9 q |# U
) q/ W, G+ F0 A6 |( ?public class ActionGroupDemo extends SwarmImpl {
% D& L. G& J8 \! L) r8 Y" u) P7 _ ScheduleImpl schedule;2 Q) N: E" N, ?! @+ b
ActionGroupImpl actionGroup;
, I) T% s& R# o% [5 W( U ListImpl list;) f* F7 l3 { p: U8 P
char Id = 'a';
% a: m5 R- o% x2 O2 t. C, p. L
( x7 @" {. u* ^3 D2 b3 @7 \, t- { ActionGroupDemo(Zone aZone) {( M6 z5 o- G0 J! s: x" V2 X! Z
super(aZone);
+ Y; s! t9 r" r: b8 s list = new ListImpl(aZone);: F! ~' H6 P: j( ], G
swarmSetp();
0 l, m: Z5 A; }, S! n: `! k; G actionGroup = new ActionGroupImpl(aZone);8 `8 w$ i4 M$ h5 Q
schedule = new ScheduleImpl(aZone);+ k6 {& u+ V1 H9 _# a: C5 g
try {
9 b/ L6 w6 T& a Selector agentSel = new Selector(Agent.class, "agentStep", false);5 c* J$ b; F) i6 e1 N2 v. z' S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ Z' A+ p2 p, {! t
6 l% x, @) ~. @0 e% v0 c actionGroup.createActionForEach$message(list, agentSel);
; w. ~; p+ C/ y2 F. }2 t! D4 b actionGroup.createActionTo$message(this, swarmSel);- }6 r7 ]+ q; s& n7 G( `
schedule.at$createAction(0, actionGroup);3 Q0 M" k+ o/ q* `
schedule.at$createAction(1, actionGroup);: P* c& o" v& s2 n5 K
schedule.at$createAction(2, actionGroup);9 N# d; ^# K/ Z5 {5 w$ ?
3 B% q5 T( J7 W2 @; c; W } catch (Exception e) {9 c- `' @! p9 d
e.printStackTrace(System.err);
: K! H. g) p# @/ Q) e //System.out.println(e);/ A% M' D2 ?1 C
System.exit(1);
6 T; g" r- m' q5 l) F! l }
: _; u) k- w2 D
9 V: G4 U- V6 c
. c* E( ?* X# |; n- d. }& P+ e5 M }- ?9 Q; B( C" b L
9 N, ?* j6 p9 K private void swarmSetp() {
3 J9 K( n5 d. O list.addLast(new Agent(Id));3 m4 J9 Y1 n# f' o& s
Id++;3 D" ?3 a( ^- b" s! r( B
}
% b2 i. D9 _) w# h e/ ~& w d+ T" w7 a1 q) r( l
public Activity activateIn(Swarm context) {1 f% F" D8 _6 b. V# r. |0 C
super.activateIn(context);
; [ ]" |. R7 z schedule.activateIn(this);
: D( |+ w7 P& F/ ^7 ]4 f return getActivity(); O+ E% g D/ x
}) g6 h ]0 E3 ?, t& i
( @# k. Q* \' S) c: K5 F public static void main(String[] args) {; s7 x- I. t& }( I6 g0 h/ Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ G1 Y# e% j; }4 Y# X$ T5 G
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% o; |& Y7 l/ a) I/ { swarms.buildObjects();$ r- x1 }+ h, l9 w; |. C( o" ~
swarms.buildActions();
+ E8 ?: k, {1 w+ d8 u* J* o8 i swarms.activateIn(null).run();; @8 Q+ Q6 P0 J& \
}
8 D) K& U$ s. \& j) y& |: V. z6 O* @* |4 h6 K* @* ~+ b+ V
} |
|