|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 {- @* X+ D! k m/ U8 _, G
. s3 K/ q1 J; ?4 o- r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' U$ o8 I" v- _# Y( X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ r& y% x. M. L8 E5 v
swarm.SignatureNotFoundException
0 ~5 `$ E. v# `7 c; } at swarm.Selector.<init>(Selector.java:76)
& v' [& }0 _+ N at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 t& J$ M3 L. K( j4 c
at ActionGroupDemo.main(ActionGroupDemo.java:67), k1 H& i# U0 f6 h# _$ C) E
8 Z; G$ `$ F$ U9 f* J$ S6 S+ ^
2 \& q% z7 T# G3 L! E7 ~) g, himport swarm.objectbase.SwarmImpl;
. N1 @1 S% D! T5 q& o0 {; i" F) [. |import swarm.objectbase.Swarm;
1 U9 W, F, Z z& F! @3 |import swarm.activity.ScheduleImpl;6 y/ |0 o9 l' G! J. h: X, i
import swarm.activity.Activity;& N$ @) R! O. f+ l
import swarm.activity.ActionGroupImpl;
. O/ ?% g# G% }6 y- L8 }import swarm.collections.ListImpl;
Z0 s5 V i; X" Rimport swarm.defobj.Zone;
, ^& B' X6 e- U1 Y5 ]) L9 L0 t! M4 |import swarm.Globals;' Q f9 u. c2 w$ Y
import swarm.Selector;4 r0 j2 q4 t+ R; {4 J
import swarm.activity.ActionGroup;
1 Z& {5 O0 R6 B8 P0 S& J: n3 bclass Agent {
( L4 O/ u6 t! m1 z8 `* f char id;
+ b4 Z/ K- O% ?8 q/ c8 E
# y* T, @/ _: H+ w* K0 ]7 S: u Agent(char id) {
0 t" Q3 U" k* Z4 ]# { this.id = id;
9 O0 D- I% q6 }) F4 \$ c2 N }+ h" h" J F" P# f3 ]& i+ [
1 {; z, D1 N5 H- n+ S
public void agentStep() {& o1 _3 C0 Q& W4 Z2 f( C1 m
System.out.println(id + ":" + Globals.env.getCurrentTime());- x1 t) X( P" ?) ]; j o
}' [1 R y$ n- A
}5 I; z. B4 `: h& w# i: F
- {: Y2 b" K) n) m% t9 z" j
public class ActionGroupDemo extends SwarmImpl {
4 o; H. `/ S+ c+ t$ c+ z% [. ? ScheduleImpl schedule;7 Y q: y, D D1 E8 W4 q: v
ActionGroupImpl actionGroup;
& Q; O r. u2 l' T/ k6 D% E ListImpl list;
f) w# i; P! k3 U: c char Id = 'a';3 v$ S F" e& h" Y' ]
& X7 @8 J' n- G: P7 _/ ? ActionGroupDemo(Zone aZone) {/ V6 z5 X; i% D+ {5 E7 |9 [
super(aZone);& B' M1 M* ?. X/ Y! u
list = new ListImpl(aZone);
* W& Y" J5 m* F0 v) B+ K swarmSetp();- x- ^; g5 M5 O2 n
actionGroup = new ActionGroupImpl(aZone);
7 s1 c+ X: F) Q3 |7 d: ^ schedule = new ScheduleImpl(aZone);
! O6 Y1 D( `* y' M) A$ d try {* {) X0 L' z; a- j3 h
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* A; b& V6 w p) Z# M2 { Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ }. U; @9 w E 1 O" r/ G3 S" F. d
actionGroup.createActionForEach$message(list, agentSel);
/ X. ~+ w" B6 P, W4 X9 f( q0 v actionGroup.createActionTo$message(this, swarmSel);- Z0 j* j4 s: s
schedule.at$createAction(0, actionGroup);) @: d4 J2 t) y! `
schedule.at$createAction(1, actionGroup);% Z, H. T% a( @, q( {
schedule.at$createAction(2, actionGroup);
( }; O) A$ j+ Z5 |) e1 n. g
( q$ d( a: C7 _8 b0 g3 e } catch (Exception e) {/ R$ ~1 [7 v2 Q3 n" D
e.printStackTrace(System.err);. \ z# x5 F7 K1 A' ]$ v1 r) G
//System.out.println(e);
' D2 ^& ?* n$ d" l' h0 y+ a System.exit(1);" J9 s2 p- Y% O- M1 W( ~
}+ N, H7 {+ _: z9 |4 M
2 [' {5 T7 R% J
. ~; M, H& D7 w; Z1 P/ A$ T2 N g4 k
}( D) j/ E- b0 ]7 ~+ W' ?$ Q( z8 g
3 X1 ^& \- P5 M$ X( p
private void swarmSetp() {
/ n4 s/ J% L; j list.addLast(new Agent(Id));$ H$ M5 ^3 n7 [" F
Id++;( Z8 v1 [) R# }$ u; L- ^
}$ R. I2 k) ~' _1 r
2 l& h, ]2 E3 {* Z4 z5 y# I
public Activity activateIn(Swarm context) {1 j5 `1 {. K- o" f2 a
super.activateIn(context);5 e1 c, A. K9 R! O y/ {& f
schedule.activateIn(this);5 Z i: M5 S7 ~
return getActivity();( Z% t0 Z& q/ m* g$ a- A. X Z# S
}. u0 p' C4 c$ F0 f( ^4 F! i
4 l+ `* ]7 _/ M: A. G
public static void main(String[] args) {) e: G1 ]- c5 `, F; l$ o
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 W Y" Z7 F+ o, w Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 t7 A$ v' q1 ^0 T- B* V swarms.buildObjects();
) S9 x$ K2 U' Q8 f! R swarms.buildActions();3 I' u* ?. d7 F a& x
swarms.activateIn(null).run();
/ M) v6 Y% v3 s$ K }! v6 A$ l, j7 q0 {0 |6 C1 P" w
H5 n1 @$ C% O1 K( V1 P7 r0 J} |
|