|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 t8 l H( x7 ~1 G9 x6 t: g
/ g. i3 f1 q+ o4 @! k1 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) \# y7 d$ ]' ^( U5 @3 [! L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' P3 X% \! a( S" A
swarm.SignatureNotFoundException; c, \1 V4 f8 P
at swarm.Selector.<init>(Selector.java:76)# R" L# r4 H; ?' }; S- E. Z q' j
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* s+ A K' S" i9 X, u i
at ActionGroupDemo.main(ActionGroupDemo.java:67), r2 T- v0 \: o5 T$ W! o8 Z! {8 x
7 ?* N" ^$ B. l5 N c
1 ?% _& K" h% A4 D( y1 @" y; @import swarm.objectbase.SwarmImpl;0 P& x1 A( e9 M# K2 p3 o
import swarm.objectbase.Swarm;& K; r! K& E" _( w3 U3 |" i7 a
import swarm.activity.ScheduleImpl;) o/ g" g. w. N3 `: M5 N
import swarm.activity.Activity;" l J2 m- y5 T4 E: E; j& E- x
import swarm.activity.ActionGroupImpl;
% R" ?6 R f" qimport swarm.collections.ListImpl;$ {: ?0 ]+ v7 {+ r5 i
import swarm.defobj.Zone;
4 E+ l& F6 Q9 B4 q; A [import swarm.Globals;0 p$ t. u# h/ F: m' S! G6 T
import swarm.Selector;
, |% _6 |+ s2 [. `! S3 ]import swarm.activity.ActionGroup; ; d: }4 Q7 d5 u& A
class Agent {
7 f5 \- A4 K- s) F6 {* [0 Q* E4 Q char id;
% F- [5 Z3 e, k+ o6 U/ v( z9 r; u7 d6 Z- F; m
Agent(char id) {
4 [% `3 u* D- [; r! g this.id = id;
* A/ r" t) {) M8 F; G }
" `' U, l4 P; Z: q5 @
: L% a6 H5 n% k6 U$ W0 W public void agentStep() {( W, B( i9 {6 Y' ?8 U, N
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 `% a W3 P6 E: H7 C- v8 G% d( p }
. C1 C% ^9 n% Q* [4 X9 x+ h3 `# w, I}
& d# W2 R9 _# {( b- Q( C
4 w6 ^: b+ p Y: Z' ~" j6 Rpublic class ActionGroupDemo extends SwarmImpl {
- `7 S. N1 T2 B ScheduleImpl schedule;1 p( \0 q; ]& ~9 n
ActionGroupImpl actionGroup;! x9 S/ G* L F
ListImpl list;
5 }/ w# H8 P& Q& D% O char Id = 'a';
# W0 I/ I5 N$ z' X$ j
0 ^) y- I: ^. h2 X ActionGroupDemo(Zone aZone) {
3 W" @& @% z3 G super(aZone);) Q& J% J% G- C0 b
list = new ListImpl(aZone);9 O; P: N# s" R! O! c
swarmSetp();
7 m' s& d( M3 q0 K actionGroup = new ActionGroupImpl(aZone);
4 I+ g+ v! U7 i schedule = new ScheduleImpl(aZone);0 ], w8 ?/ H' D8 Q' j
try {: o- C8 B2 L) l4 w
Selector agentSel = new Selector(Agent.class, "agentStep", false); L9 e8 g! p# \/ U2 @: H9 g1 X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 G" S$ V) l. O3 \* l
+ i& f3 B3 s# Y6 ?; ` actionGroup.createActionForEach$message(list, agentSel);
4 a/ c5 A2 T( U$ v. U) j- |. G7 O7 G actionGroup.createActionTo$message(this, swarmSel);
& F! [ K8 e2 V% ~7 l% P' g/ o schedule.at$createAction(0, actionGroup);
1 w+ a. u% l" s$ C$ Q schedule.at$createAction(1, actionGroup);
' t/ @2 |2 E5 W- L# p schedule.at$createAction(2, actionGroup);
; o2 L0 a& O; G! K3 c
2 q1 \+ R7 z a G7 X- X } catch (Exception e) {
* r/ f G9 |1 ]0 w* j e.printStackTrace(System.err);
1 j, Z- j/ M. d/ h' i/ E3 [( [ //System.out.println(e);; ^/ r: q& e2 L0 C/ ]# w- g# ?
System.exit(1);% a2 Y, M1 s" }+ x. u
}
" F$ {1 z6 f: [3 u2 K6 T" @3 @ f
. S/ U0 n( M4 ^% u/ G& e; t: B2 C
* |/ W' v$ q v* y; ~8 Y( Z }
; F5 w& a8 C, P: I0 B# G: r0 S' j: B1 b
private void swarmSetp() {
2 g4 T; i, W C8 j1 a list.addLast(new Agent(Id));
) x( k8 F% r9 i* V; C. p Id++;0 K+ d* N* i1 z" ~! c" E
}8 J8 S0 K9 j& A, H: m0 i) @
& @- h, j1 O; v( k- V public Activity activateIn(Swarm context) {
. r+ z' f2 P5 |9 ^ super.activateIn(context);7 ^, E+ M1 n7 J0 @1 c8 s0 Y. ~
schedule.activateIn(this);# m, E% C9 ?$ E0 |
return getActivity();
% x+ C# ]* f8 s6 y5 {+ q" k }
0 z( ^" c& {: z' c4 _: ~+ e: e& K2 u& \' ^* a/ G
public static void main(String[] args) {4 e4 A1 `& r( H" l
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 ~3 R2 w" K% b
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" v9 a# Y3 b& ~9 E! z" ^ swarms.buildObjects(); ?+ c5 u$ W, p" u7 L9 `
swarms.buildActions();
1 e) f; p7 e# ?, Z: Q3 F swarms.activateIn(null).run();
' p! L( j1 r8 ^- E- Q, t8 U }; o- Z# b9 G" ^* c2 o2 J
/ X+ \7 Y% Y# |# m} |
|