|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! @( D4 O# z) {2 |. z G
. R; n: A' P: f+ L2 t: s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ A/ ]8 v" _7 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; {2 F1 i' Z% ^* ?! P
swarm.SignatureNotFoundException
! E) J9 L' R2 H at swarm.Selector.<init>(Selector.java:76). R" \- R V6 `# p9 R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37) R5 ]. g/ e. s7 s# o8 y# T
at ActionGroupDemo.main(ActionGroupDemo.java:67)
! U- p5 B* g4 X+ i1 N4 z+ g5 T3 x2 l# T8 o4 J
; ]) N7 a. W1 [4 Q: G7 S* O' C: f* Mimport swarm.objectbase.SwarmImpl;
1 w3 ?3 v8 ?. D( [, O& o( b3 Vimport swarm.objectbase.Swarm;' c- k$ }" b- z8 V; x5 Q5 L' S
import swarm.activity.ScheduleImpl;
' J% p# ~' W y, u4 e( i* b+ G- Pimport swarm.activity.Activity;& a/ ?! R; N! |7 G* t# X; Y
import swarm.activity.ActionGroupImpl;' I8 a( E2 Q7 z' J6 {! _
import swarm.collections.ListImpl;' G' m5 T$ B; z6 \# g7 s
import swarm.defobj.Zone; , c8 N# ]) x0 i) T, T2 C0 z r
import swarm.Globals;8 N: s5 ^ Q0 d/ Z6 j
import swarm.Selector;& k- s$ h' ]* ` x; m
import swarm.activity.ActionGroup; & V7 b) O' B) F0 [
class Agent {
6 [4 a% `) o8 f/ h; K# H1 D4 a5 l char id;
9 V1 m- R# ~/ l; t% D+ ? }1 X2 U' r/ X' r. c. v/ G
Agent(char id) {
" |9 z+ p0 H& p this.id = id;5 h7 D( g9 I# t1 V. y( s2 P
}
% }7 w P3 L9 u+ ~2 C- x( X5 R3 c
2 c. G7 P$ i, z5 s1 m$ X$ }( B public void agentStep() {/ E# Q) p. c2 e- V+ `0 w! l- Y
System.out.println(id + ":" + Globals.env.getCurrentTime());% o' X1 Y( m2 c# `( t
}. z2 y5 {4 u# ~1 B7 O/ r/ H
}, u3 M5 m0 c& I! q9 B; u/ y
0 c7 T. M: D$ k8 a# Mpublic class ActionGroupDemo extends SwarmImpl {
% G' C/ f1 P1 q4 M8 m ScheduleImpl schedule;6 n7 f) h, G; s1 S# l( G, V
ActionGroupImpl actionGroup;
& |5 X0 s! P7 Q ListImpl list;( v8 U4 ^+ x2 u2 }& b9 L9 V
char Id = 'a';
! Y' \$ m; U+ Z, w- Z; C6 ~! z* ]' `; x% A; G O+ J2 f v# Z% G! }1 z. i
ActionGroupDemo(Zone aZone) {
; w8 l8 J) ~$ F4 N super(aZone);8 u3 c) a0 b, ?- ?
list = new ListImpl(aZone);
5 E3 s# @& S4 L. L3 g8 ] swarmSetp();3 `: G# @4 l; O' C" {0 g
actionGroup = new ActionGroupImpl(aZone);
- ?" a% g8 Q/ F! d( P* B schedule = new ScheduleImpl(aZone);5 ~/ x$ P6 ?4 O1 E' ^& r3 j. d
try {
% q; d: Q( r, x7 ~: g Selector agentSel = new Selector(Agent.class, "agentStep", false);/ s$ P7 V) {7 m. n" Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. [0 m" L9 ~ v& K6 f
0 x4 e" o' j- e8 [ actionGroup.createActionForEach$message(list, agentSel);! f& a* g3 j# v3 f
actionGroup.createActionTo$message(this, swarmSel);
' P- `$ D/ b; q- r: U$ f schedule.at$createAction(0, actionGroup);
7 [1 C% A9 D2 ?" {% ^# e- \ schedule.at$createAction(1, actionGroup);- b; c+ O- F& o& o: _
schedule.at$createAction(2, actionGroup);
! b% ~6 G( x, _8 w* c- C; c! d% n
6 B9 R0 M; Q& [5 \2 x5 C0 g( H v. m } catch (Exception e) {
: @. W7 t# n! \% q e.printStackTrace(System.err);' o! c3 C4 d% g% u) M1 n5 f
//System.out.println(e);
2 C# G9 V- T# O K System.exit(1);/ |8 y# d2 E6 N% U8 u& b
}
6 T9 f1 |0 d- g. @6 ~6 A7 q/ Y6 w/ V7 O3 L. B# O2 U' P
" T1 |( t/ e% r* o" e- z/ p5 O( ] } J- h @0 K v3 G' M7 m
6 v- C! w' R9 O; K0 [; S y \
private void swarmSetp() {
) u* @! o/ n: w6 I7 q% E8 B' i list.addLast(new Agent(Id));$ t3 O6 A3 I2 F: j4 r
Id++;
3 O P- Z, k/ d7 e }& X9 K2 R5 @9 V
( {& k3 a7 _$ k' s, S6 G$ ^/ }& c public Activity activateIn(Swarm context) {
5 S0 c- v8 g/ t; N8 W X super.activateIn(context);
`3 E- @! Q7 s& ]( ` schedule.activateIn(this);
" j! {* W: Q {% h' B. E return getActivity();
( }: B) T9 p9 ]* q$ G }
3 N1 }* u+ t% H0 R" \ c& T M+ J2 ~
public static void main(String[] args) {! `& Z' B% s: H9 w c4 f" i( W
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& v7 k' _6 D, r9 i1 C Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 v1 r/ ?* X5 F1 h2 D* n1 k: k
swarms.buildObjects();0 u/ e1 a/ T) ~' z$ X+ K! n8 h
swarms.buildActions();# {( S& m0 I6 N w
swarms.activateIn(null).run();( u8 C. k8 j9 p( L- d
}0 X+ Q8 z# s5 s
4 k% R4 A9 c& c9 M2 z
} |
|