|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 p1 U. v; i8 ?
2 R V& T, ^; o* p" n- E" f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ f1 Q. V- L2 [( z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# ~+ Q. x5 H- M6 D
swarm.SignatureNotFoundException/ g K$ m* B9 i g# }, b
at swarm.Selector.<init>(Selector.java:76). @6 X1 I$ B9 c5 H5 H! k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 M$ G" v8 B& p! C
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: ^) `4 K+ I# c' b" H6 {) W) F; r' m. }( A7 C0 f" W4 \
$ K" Y$ J8 ]& P2 `% ?) V) gimport swarm.objectbase.SwarmImpl;- c- G( U- E: H4 c: s
import swarm.objectbase.Swarm;
t& Q9 o6 r& t' m) T) i/ ?2 m3 kimport swarm.activity.ScheduleImpl;' ~2 D% e) s8 G3 y; i" l3 W& f
import swarm.activity.Activity;
" W- E1 `7 g5 h) P. D' Cimport swarm.activity.ActionGroupImpl;
0 u( d- I3 `1 q$ {import swarm.collections.ListImpl;
* t/ v0 P0 ?9 b) J2 f x! S" i gimport swarm.defobj.Zone; & @2 W' h0 B% r( P# W5 q& ?
import swarm.Globals;8 ^6 l( C& z+ ^# f; T5 T7 U0 {& Y
import swarm.Selector;' d8 s$ m# C# C/ p
import swarm.activity.ActionGroup; : L) ?" N0 ]' n3 W% G+ w
class Agent {
3 W9 g. i" a( C3 D5 i char id;- O; D- K# G% t3 P# x( x; p
* }' q7 v, {5 Z N& ~' d% c0 w
Agent(char id) {* L& _5 i7 i! g. r$ I& |" ^
this.id = id;* F/ m1 R, a! V2 b' M2 q
}6 N5 W7 v/ s7 x9 |
! b1 g" |) w- n3 U( A
public void agentStep() {& o4 t; w' D5 D. q
System.out.println(id + ":" + Globals.env.getCurrentTime());
2 p1 z/ t( p J2 I3 N& a M9 a }$ u9 F$ Y' E/ K" O( G
}
2 r# I. l' e7 R2 u$ n3 `& J
! P+ o$ A/ j% V, wpublic class ActionGroupDemo extends SwarmImpl {6 o& z# d Q% ^
ScheduleImpl schedule;$ N; N/ z, h. C: Z0 ~. Z& V
ActionGroupImpl actionGroup;
8 b4 b$ ^0 H2 @# ^# K ListImpl list;
" y+ O8 c) x* O char Id = 'a';
0 i6 M. q7 @* |8 b# t4 U3 P! Q; r i$ F' d/ q0 r, w
ActionGroupDemo(Zone aZone) {- F# ~7 K3 z5 @. ~2 ?4 D" M7 U; H
super(aZone);# N* |0 ^" v7 t2 {5 z$ ?5 N. G
list = new ListImpl(aZone);
: J# i, I; D! B& S+ U& A swarmSetp(); o! p+ B! M0 O) b- l. d0 M$ V
actionGroup = new ActionGroupImpl(aZone);+ ]* n" R1 z \5 d( ^, \
schedule = new ScheduleImpl(aZone);
( c) V: P/ I& z3 Q' }$ E# u2 _* u try {
; l8 H2 s/ J H" W Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 F/ U" l3 G- L, M+ e" Z+ v% X7 ] Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 O t+ N6 T5 `' [) E3 y' z% u " g* E5 l8 I, v3 m
actionGroup.createActionForEach$message(list, agentSel);
) T4 n1 S( G* s9 o actionGroup.createActionTo$message(this, swarmSel);
. t, ` Z! z% C* V2 X, u; E& ? schedule.at$createAction(0, actionGroup);
% Z% s6 Z" p9 p5 d3 t' @! w& i schedule.at$createAction(1, actionGroup);
8 ^; X A8 Q) {9 B( n schedule.at$createAction(2, actionGroup);
# w' {1 ~' S7 ?' p& X7 ~
, j# u. E0 o9 F/ g } catch (Exception e) {) I) R. L% p% O
e.printStackTrace(System.err);
( o! N9 j T d' g% n! {1 P //System.out.println(e);
: ?5 b3 P" d0 s3 w System.exit(1);
# |/ f1 y$ r: v+ N" V) M; i }
1 d3 M0 Q- A! O. b
8 J4 |( U* Q- x T/ z3 R1 k( x
}6 x( B5 A1 L x; a# B2 g& @
4 c9 j0 N, L/ J
private void swarmSetp() {
- C) i0 b, j0 M, }; i list.addLast(new Agent(Id));
! V; I: I1 S+ g/ U4 ?0 k) k) H Id++;
c0 _7 c/ V( I! X- |6 P }
% n9 |3 N8 H. j4 C J8 t" Q4 Z- o% b2 c' u
public Activity activateIn(Swarm context) {
, s( P# a: ^6 x# ~' F) y super.activateIn(context);$ r/ s% C9 G x: Z$ H5 O
schedule.activateIn(this);8 O! }3 r2 z& s3 Q1 `( J1 r
return getActivity();
5 J6 u9 K) T; H }
~, [- V) H) _+ N2 e/ q# V" N; g" b
6 d7 o( Z% O3 K; ~ public static void main(String[] args) {
& P, E' d" ~( T+ J: A Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# Q; J6 x6 |& N' B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. | t+ p/ N; m( H; Y
swarms.buildObjects();
4 `. Y6 j+ x$ H( i8 y swarms.buildActions();
3 a" J9 I/ u+ R6 ^4 d- Y8 A# m swarms.activateIn(null).run();
/ X/ w& K9 r: D0 i8 @0 T }
" b6 K( p; c( p# J1 \! O* ]2 e4 K# C% @2 Q
} |
|