|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . \( ?3 [/ F N. R3 y, T0 g9 E, F
$ E! a( u# W" o( [6 t& U& t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( ]- o/ ~' ?- q9 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! O7 E3 w/ x; k! N. p% p
swarm.SignatureNotFoundException
; @: i- ^0 T# A' v8 v3 t0 _ at swarm.Selector.<init>(Selector.java:76)
" s, \: w, a: g5 P% r at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 y8 @ R8 G0 R5 F4 E
at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 D8 S" B1 x( {5 b7 A1 D) U+ l$ P; j: o
6 p' `: E c( S, e7 A7 Y; m4 H. o H5 {. gimport swarm.objectbase.SwarmImpl;$ q0 x& F0 Z. a" q
import swarm.objectbase.Swarm;
4 s8 a1 W7 p7 I3 B( W& aimport swarm.activity.ScheduleImpl;
( y. {9 D5 o1 c7 yimport swarm.activity.Activity;
3 u5 d8 \3 r3 G- P' v' A8 Q6 Eimport swarm.activity.ActionGroupImpl; V' S% [& V7 z+ k
import swarm.collections.ListImpl;
3 |* M) g; t2 n5 {import swarm.defobj.Zone;
/ j1 G( q! O4 ?' g1 b, M8 Gimport swarm.Globals;
! R7 s- t$ I- z# ~* w" Uimport swarm.Selector;* R: {2 b4 L+ g* c( u* L+ H
import swarm.activity.ActionGroup;
8 P: _' V7 y( D: fclass Agent {
* H1 O8 ?4 W" {* D2 Q: }: N0 w" }+ K char id;* B5 g2 j1 ~: Y; m
4 ?. k" s/ @: F0 t$ o
Agent(char id) {0 Q4 n7 E& Q! }$ z6 @' @
this.id = id;: K; ^7 v B% s) R
}0 a. p+ R- g8 R: L7 M, `3 Q
, p0 i% e' c& [- v4 j* y" B
public void agentStep() {$ m: ?/ n+ j/ N; B
System.out.println(id + ":" + Globals.env.getCurrentTime()); u; C+ c# X# b
}. s* n9 x" j: d2 E7 C2 ^ I
}
0 G4 P% w7 r2 A* C
7 E0 D, ^; q$ ~public class ActionGroupDemo extends SwarmImpl {
" k _ Q5 ]4 r7 K$ Q$ Y ScheduleImpl schedule;
' ^+ H5 J5 L& e. A4 d7 R# F- m& } ActionGroupImpl actionGroup;
( ~& J' B, U0 P1 ~6 b' f7 E5 H ListImpl list;
7 n$ D3 S5 B% B2 L1 \ char Id = 'a';- }. [6 N) V; O$ a. r
3 k; L! y5 o H) M0 L
ActionGroupDemo(Zone aZone) {
0 H# L4 O( G$ L5 Y: T& ` super(aZone);
9 z; k! H4 u) t# F8 S5 | list = new ListImpl(aZone);; X1 D" A. N3 E9 d: v
swarmSetp();6 W* M' J/ ~( I0 ^% ]
actionGroup = new ActionGroupImpl(aZone);$ C/ u5 o2 U" A9 n' R* R% u
schedule = new ScheduleImpl(aZone);
1 Q! q5 r. R2 Y try {2 E4 z1 z, ~$ V; r
Selector agentSel = new Selector(Agent.class, "agentStep", false);& W2 F" L* l1 i- g' ~( s* @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. N% q6 V9 ]& y2 X: x A3 ~; r+ a V- z
actionGroup.createActionForEach$message(list, agentSel);* E* S, W- R p, [/ x
actionGroup.createActionTo$message(this, swarmSel);5 A' H1 _' H" v) T2 n8 v. P5 }
schedule.at$createAction(0, actionGroup);
% g) k& Y8 a' G schedule.at$createAction(1, actionGroup);# q1 u5 T' D( S
schedule.at$createAction(2, actionGroup);/ T$ `) J5 J3 R4 F
: @2 N' N. E$ |. V6 C* j+ c9 N9 W } catch (Exception e) {
| t9 X; k }( W# d. O e.printStackTrace(System.err);
* T8 |. w2 x7 |* K; U //System.out.println(e);; T q- H4 F' z- j% I
System.exit(1);( Y7 r/ s+ s- a) c6 b7 t. @
}* {7 o! L- t* G
& A3 G# U8 v0 X# r
# Q# P& T2 ~* S; L/ n; [ }8 ?) H3 G" d/ X- u9 g
U/ c3 M. `5 t, u
private void swarmSetp() {
9 U7 N* T7 K4 ^1 n list.addLast(new Agent(Id));
! \' `- |. Y( Y0 D0 g Id++;
( F" B+ A! q9 k) V* N4 g7 Q }
# l! n' k6 G; t' B' S/ c* p6 `1 G+ ]& c2 {2 a, }" T5 J4 [
public Activity activateIn(Swarm context) {
' n2 |( l9 Y( f4 a; N5 I super.activateIn(context);
2 R% D+ E7 x) n. b5 H1 ^ [ schedule.activateIn(this);1 H8 H- r# ?3 j( w6 B, E
return getActivity();
( J3 E: X: D4 G. o) v& s. d }- Q4 l5 D4 I( P0 S+ t! E3 ?
2 p4 x) I6 A. K! z5 r
public static void main(String[] args) {
& A7 Y1 _6 a3 L) B Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 D0 }. m5 u h* P7 w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 h& k( a" U7 w! u; d swarms.buildObjects();* ^" ^& Z/ E4 L% ^- z6 I
swarms.buildActions();
, C% V7 p( G6 m& U' h! }" W swarms.activateIn(null).run();% i: ?* b" L6 c
}- T( B' }! ?% ^3 r
) Z" o9 z4 ^" v1 i/ f3 X. O6 \9 I
} |
|