|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' D; M) v$ h) F1 B& _" V
, o: \ Y9 D4 Q2 j7 v( P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 ]- u. X# n) E9 m4 z# b# `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 r: @; k: q" z2 k, [ f$ B
swarm.SignatureNotFoundException
7 j' [! y0 i+ N3 U8 j1 U/ s3 A) E at swarm.Selector.<init>(Selector.java:76)& o0 V* N; ^ Y- P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, T' s' {3 Q' ] at ActionGroupDemo.main(ActionGroupDemo.java:67) ?* L) \7 y% [' ]: [/ f1 x$ s
* m3 b1 D5 q( c8 m' F: N
( s$ \1 p- s( e; Wimport swarm.objectbase.SwarmImpl;" X; ~/ Q6 C t4 |
import swarm.objectbase.Swarm;
' M6 }7 U" w2 U4 i* v- Cimport swarm.activity.ScheduleImpl;, T/ Q n( Y/ s# Y3 f3 ^4 u7 E
import swarm.activity.Activity;
' r. F# M+ Z. h# c% ]import swarm.activity.ActionGroupImpl;
/ J" Z, m) E! X% ?+ y' {import swarm.collections.ListImpl;0 \8 Z* W2 i7 z, D/ D! q( U
import swarm.defobj.Zone; , u1 P& x; Z1 R/ T
import swarm.Globals;8 s% F/ }; B4 ]8 V- d
import swarm.Selector;
* A6 P4 B4 d! f2 H2 b+ R7 Rimport swarm.activity.ActionGroup;
' h& j+ O3 d5 q' O( bclass Agent {- [4 l o4 E+ j1 O' W( b
char id;
3 U9 k1 b' ^; N( p2 P1 y _; P/ ~$ q0 n/ i7 m' w1 F
Agent(char id) {0 V. N# p8 k/ X( P
this.id = id;
6 H+ ?( [6 f; t. ^) a0 a: e) B }
7 X% }; q: x( _1 v6 x5 ^+ v% p* J& G% p) m1 z( ]
public void agentStep() { }2 O; \1 k* n
System.out.println(id + ":" + Globals.env.getCurrentTime());7 i" X3 x9 t4 Z$ r Y
}
0 q1 C* u5 K- Y' Z6 v" }}
3 a& ^4 w5 u" Z9 v0 m7 G
! [5 p( K4 x7 }public class ActionGroupDemo extends SwarmImpl {
/ }! w: _) s% O! L$ c ScheduleImpl schedule;- n5 u* M# g/ ^$ }( v
ActionGroupImpl actionGroup;
0 A+ Y$ v9 H6 \; h0 x# K1 s4 s. \ ListImpl list;
" `) O7 F% n! g( u3 @ char Id = 'a';
# w" U# _8 e& R5 O* p8 e) K2 K& m8 f" k$ W9 M2 C0 e! B* j) ^
ActionGroupDemo(Zone aZone) {
* v& o7 O \) |5 k, j super(aZone); @: i t: \' p' Y6 A! p
list = new ListImpl(aZone);
9 Z) c% q* E) i swarmSetp();' a, n7 N7 q. D* i" U3 p$ [! O% Y
actionGroup = new ActionGroupImpl(aZone);
/ o0 T* a, Q5 E- a9 [ schedule = new ScheduleImpl(aZone);
* Y5 D( d( k* k! F8 p& Z try {7 a" w$ r; A* q% S* Y w. M; S9 e
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 ?% \0 S x4 Z' e2 g
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# i% l- s: U" }& a
9 P4 p; k @' z2 a7 T3 q- I9 b& u
actionGroup.createActionForEach$message(list, agentSel);
A9 ]* W0 W/ _; D6 C- f7 y actionGroup.createActionTo$message(this, swarmSel);2 q5 ~7 C% ^- a! B+ K
schedule.at$createAction(0, actionGroup);
% a" L+ U: L% @ schedule.at$createAction(1, actionGroup);/ t$ b; i7 g" o8 _" v
schedule.at$createAction(2, actionGroup);; R/ b6 q6 C) a- e+ S' o7 c
c6 i( I: j# W, H
} catch (Exception e) {3 o3 I; V9 {( C/ v+ U6 y6 [0 u
e.printStackTrace(System.err);
# a7 t& ]: z! U$ P //System.out.println(e);- |6 y9 F/ b0 v
System.exit(1);
n1 \+ F/ k, x5 K# @) V }7 @% l! B" X4 V' r: W
1 B) H! P& X, k, V( z9 @4 p+ k
3 S6 j& o- Y' r3 p
}! u# w' d G1 Z" H6 [: Z
. t9 j+ E7 I# }2 h
private void swarmSetp() {
1 R1 B; I$ [/ w* y" j! C3 r9 T list.addLast(new Agent(Id));! ^; f6 _7 W! C
Id++;
& o: R, Y Q7 A' z- c) x6 a/ r }
4 r# `3 S6 Y5 E$ t0 {( Y( {
3 i* p8 ^6 k3 m, p j: j public Activity activateIn(Swarm context) {$ W' e+ l0 r0 y( W! E; {. k0 |
super.activateIn(context);
' m+ K+ J$ `5 v5 B- n# C: L schedule.activateIn(this);
4 m- Z% H4 q+ B& a( }9 G return getActivity();
! n6 U4 L9 J3 m }
3 f' f: _0 a6 B* P2 w7 k9 x$ X0 m/ G b2 N( t
public static void main(String[] args) {
/ @6 \- b1 p. I% p( h Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ w& o: N3 x& i" g. P; L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( s- {" I" ^. b9 E ?+ X9 m( S
swarms.buildObjects();7 |, P" {2 ], h. n+ ?: A9 \0 n2 ^
swarms.buildActions();
+ `, M2 \; t( w7 ] X2 t: [ f( m9 R swarms.activateIn(null).run();3 T- }7 R* ?& J# ^& _% y
}* T B6 [+ `0 L
$ g, p% ~' ~2 E: p9 q) h4 L} |
|