|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + Y T% H, Z8 A/ s3 S5 x$ d
" w# n, u/ H* z% U, t9 K2 o. }9 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. z) M" ]5 K# @' A6 b0 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 g5 `6 [; m3 k3 E4 Lswarm.SignatureNotFoundException
+ z2 f* O* H9 a3 ^0 M at swarm.Selector.<init>(Selector.java:76)
2 v9 f# x5 ]2 ^+ t. G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 X. X1 F8 {7 x: H J at ActionGroupDemo.main(ActionGroupDemo.java:67): y r V1 B& q0 e
( M$ R& v3 [' w4 A: T+ N) B
3 O7 \3 o) V- `$ z; D& P1 s, g
import swarm.objectbase.SwarmImpl;6 r+ u1 W! e0 }& ^9 @- q5 M
import swarm.objectbase.Swarm;
6 u) \, Y T, g8 g$ v/ cimport swarm.activity.ScheduleImpl;; Q8 `2 P, u# D1 x5 C
import swarm.activity.Activity;
~& f% S, H1 Y% A2 h, yimport swarm.activity.ActionGroupImpl;" _: \' |5 E- g1 ~+ N% |
import swarm.collections.ListImpl;# @% \- v, ?: O/ q/ h
import swarm.defobj.Zone;
9 x9 I$ U2 A% I+ oimport swarm.Globals;4 X, T; T. w- G* t) L
import swarm.Selector;7 @7 W0 c. N& d
import swarm.activity.ActionGroup; 4 K+ ]! i0 l" c8 U$ F7 `* c
class Agent {3 b& H0 C4 L1 z/ y3 I+ q
char id;
' K! Q5 A% i% |$ i# |. `2 u. V$ {1 ~5 n. j$ \5 K3 i: H2 Z/ i
Agent(char id) {2 _) h' ?8 k4 C% u: `1 O6 y$ l/ A
this.id = id;
& N" P( Q0 ?+ X$ \! ? }
) b9 e n$ h' F6 S
: Z+ |( V1 s+ D& u+ a, K public void agentStep() {/ Z. L9 x, M: \1 Q2 R0 ] Z3 W
System.out.println(id + ":" + Globals.env.getCurrentTime()); U# W3 {+ M9 c! m' C: d. @
}: m3 X* l, u9 D
}* L# C6 `* F- p+ X, O2 x
S/ D9 f' L) G5 v- e+ } Y9 spublic class ActionGroupDemo extends SwarmImpl {
2 `. _( o' N& z k* v ScheduleImpl schedule;
; c- {! r- @: R. ~ ActionGroupImpl actionGroup;8 d/ e* P5 R; q
ListImpl list;. I* h9 P. {0 A/ \3 \: k. ~
char Id = 'a';
% R$ Y' C2 [5 g: L) U. N1 n4 X; C* N$ b& v, p. x, n! T! ]
ActionGroupDemo(Zone aZone) {
5 f- z# i: y2 A; Q3 ? Y super(aZone);
3 x- o# T' r2 @4 i7 m. ` list = new ListImpl(aZone);+ O3 n/ a8 k v; u# `6 M2 P
swarmSetp();1 y `$ Z3 m- k/ H3 d
actionGroup = new ActionGroupImpl(aZone);
N7 X1 j( ^8 T, ?/ c! ~ schedule = new ScheduleImpl(aZone);
; v* {, u* `* Z+ T `( o% D try {$ d+ Y! P8 |5 p/ D
Selector agentSel = new Selector(Agent.class, "agentStep", false);& q% t n2 x3 [& K/ V' x* A" } k
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# R; [) w' J8 z5 m6 {2 R9 i
6 {' H( @( b: ~* ]& }
actionGroup.createActionForEach$message(list, agentSel);
- t$ p( F! r7 R) i( L actionGroup.createActionTo$message(this, swarmSel);
- C& [( e9 V6 i% S8 y1 X5 i schedule.at$createAction(0, actionGroup);
. f$ t. Y. j9 k+ O D9 b schedule.at$createAction(1, actionGroup);
- c: |! f9 E7 u( L schedule.at$createAction(2, actionGroup);+ K: U1 T0 I- ?9 c
4 p% c! b' I( |9 g" X# f6 s' U/ T, o, `
} catch (Exception e) {
) N, @) p7 ^, O( {. y/ O e.printStackTrace(System.err);* M# c; S1 l: j5 v/ t
//System.out.println(e);
# @7 Y3 h; u' H) I System.exit(1);% c, h1 x* n8 [- F! e' J
} E0 U( c# w, ]. {* J3 x" D6 S. b
, J5 a$ E1 t# a G' o8 Y$ O5 C$ `+ {; m) B
}) [% j" q+ Y3 d. ^" `3 D
4 P3 x- g+ }) b9 q# y
private void swarmSetp() {
$ Z3 o( @ W( u/ }; n% B list.addLast(new Agent(Id));
" T2 u& D" G7 t4 M; i' A1 W Id++;4 D4 K% P* Z: s5 n% Z: W
}
1 L* e' i& [+ M: m: R' }3 c" ?
( Z" }. w. n. l" L: m2 ~/ R$ [ public Activity activateIn(Swarm context) {
. E+ _) H" q( w+ Z+ t* ? super.activateIn(context);
% j9 K! T, C' B3 d8 c8 { L' K+ P schedule.activateIn(this);8 x' |! W) r7 | U( m
return getActivity();0 A. ]% V% M' o, m# F! ~- K& u
}
% k& A6 M$ q8 t6 R p- ^
; V. _, q+ x4 G* ^, ~ public static void main(String[] args) {
! b! l4 B/ J& i. s) r; Y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 q5 S6 ^% n6 R& S0 t& V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* P1 S4 v( w+ z3 L4 K4 o( j swarms.buildObjects();) L' q0 b) E; P/ H9 g+ }
swarms.buildActions();
5 V8 S2 p% Y% d. u swarms.activateIn(null).run();
5 q4 J, U5 y3 e9 M6 t+ `- _ }
% f4 g9 E( r2 L0 R5 u# h8 W& ?$ d8 h: h! {" e# Q
} |
|