|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' @, j; H2 W* S+ j
% G$ n% I7 m& f2 R1 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 O- b4 Z4 D1 W4 Q6 q! k4 q' ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. `4 l& O/ y* e: `
swarm.SignatureNotFoundException. P% y$ C: i4 b1 N2 t8 a4 Z
at swarm.Selector.<init>(Selector.java:76)6 r+ o2 @* O2 e- J! D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37), E% v" J8 H/ ?0 ^2 Q* K
at ActionGroupDemo.main(ActionGroupDemo.java:67)
. b5 ^, Y5 x3 Z0 `0 s5 E! E: ]$ z1 n+ o- I
5 {( B+ V: u! Q- {, w8 {& Bimport swarm.objectbase.SwarmImpl;/ {! |6 `; c. T2 }& G) a
import swarm.objectbase.Swarm;# `8 l7 d: y# q- o( T. Z
import swarm.activity.ScheduleImpl;
( p8 b- }2 b4 himport swarm.activity.Activity;
: p" r. C+ k: o5 |0 L3 {0 m9 ximport swarm.activity.ActionGroupImpl;
4 I& w8 a7 v4 C5 Wimport swarm.collections.ListImpl;# K/ A/ \0 {/ s# W7 c6 B
import swarm.defobj.Zone; 0 S2 f" n# c# _( C
import swarm.Globals;, z) ^9 c3 w1 G _( B! A
import swarm.Selector;
' x: z8 @4 f( [7 S( G; P9 r; E$ j9 Ximport swarm.activity.ActionGroup; ( s) K, m" o' s+ G$ S, y
class Agent {
, G2 m$ U/ D) C2 ~$ ` char id;9 t+ W5 z$ W1 Z4 j
$ Z2 s. r) H% R: S Agent(char id) {! {) Z- n0 e3 I8 `* R. |
this.id = id;9 a) V2 ?0 {& C% @
}. W3 H+ x8 b, ?* Y& o X/ t6 ~
# t' U" H ?: F) d public void agentStep() { z0 X+ ~; a# R. X6 ~; N$ E
System.out.println(id + ":" + Globals.env.getCurrentTime());& w. a _/ u, E. ^' M/ l
}2 X8 i z. p$ }3 C U) W
}
" |5 V& G+ H* g4 ^. K% _$ e9 o5 }7 W9 M l6 F1 C- f
public class ActionGroupDemo extends SwarmImpl {: y7 k4 ~4 r# k. e, {' e
ScheduleImpl schedule;
% n/ A: J4 r0 A! C- j( j9 W* ? ActionGroupImpl actionGroup;, g8 K `1 T2 H# i
ListImpl list;
$ \, o# B3 q$ d) Q char Id = 'a';. u/ I: e7 W: a2 G0 a
# u* D* F1 B2 n" I; E1 N* b
ActionGroupDemo(Zone aZone) {
; U8 H+ h+ f9 h- c M; x+ A super(aZone);
) I& V% e: b7 o/ n: I/ N9 ^" D list = new ListImpl(aZone);
1 u2 Q% g5 f; c* a5 i0 G! q swarmSetp();
$ l* g, n% R/ G4 k) ]) L actionGroup = new ActionGroupImpl(aZone);
" C% w9 l! _ D( i# ~2 r- Z" N. V schedule = new ScheduleImpl(aZone);
2 t3 s& ~, ^: L( [, W/ H# a try {" E' Y8 X5 U" a* _4 ]# p
Selector agentSel = new Selector(Agent.class, "agentStep", false);% p1 c1 N2 I% G
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- e/ I+ {- J1 n3 ?" J0 j
8 I K7 b$ h1 E' F b) ^ actionGroup.createActionForEach$message(list, agentSel);
7 c# \2 y* b- z4 L1 D- Q actionGroup.createActionTo$message(this, swarmSel);/ g# L0 i$ j% x% f$ \; C
schedule.at$createAction(0, actionGroup);
& B9 j+ E: |4 |) f schedule.at$createAction(1, actionGroup);
9 Q+ Z5 Y' [) `7 Z6 a& r# Q: a schedule.at$createAction(2, actionGroup);! y( O4 q& ~) x; |
8 A7 Y! l) Z/ h } catch (Exception e) {
+ d, G; F6 h3 |/ M. ^ e.printStackTrace(System.err);/ J5 j& V9 [7 ?
//System.out.println(e);
. ]8 Q; l5 U% F4 _& y8 _+ N8 w System.exit(1);
4 z7 u6 }2 l! E" c1 B1 {) S1 V% n }
0 n3 W, L, a; Y1 C. E, q8 l; g
: o2 o- E4 O, ^$ e' I* t& P5 u5 \/ q8 i2 K. S3 s
}2 T5 D6 g4 A- s
" ]! z8 n+ w1 S' t7 g6 z# E# @ private void swarmSetp() {" n! s! R4 p. D5 ?
list.addLast(new Agent(Id));! U% }3 o& T8 K1 M* O( M9 L
Id++;
- T+ w8 t7 N$ \( g& {- o: x2 U }
8 Q3 ? ^3 v L2 f1 p$ [
) z3 U) x- K1 u: G public Activity activateIn(Swarm context) {& O" y# u V* M- Q' ?
super.activateIn(context);
2 a A. J2 o5 J' O( N3 p schedule.activateIn(this);) a( G1 `( ^& e* K# h
return getActivity();5 m, V* i! r/ k$ B5 D2 w
}/ u# C2 F$ G# l
7 G# X4 h1 Z0 b$ ]/ y public static void main(String[] args) {
( Y, V; G6 ]8 t; D- D# i; n& N3 p Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' k" d+ l+ W% @) _6 F4 v
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( f |, i2 U2 r6 M7 s; w1 D3 v
swarms.buildObjects();
0 T) G* g) \( K6 Z) F) h$ a( U swarms.buildActions();* b9 v; x7 a. t7 Y
swarms.activateIn(null).run();
7 q& N: [( D' t2 z; @3 O }
3 i2 U4 k' ?" ~2 u, e
$ n) x _1 o# x} |
|