|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * p9 X; T( T8 f/ g- T6 h
2 i4 F' |7 @" e5 P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" K! ]( O4 I& l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- T* M0 r' h: @& K- h' @, t) N. d
swarm.SignatureNotFoundException+ h3 p6 t2 W# A/ f& U3 R$ z
at swarm.Selector.<init>(Selector.java:76)
* A9 o& v; ^1 d8 n q; W at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, t& q9 ~' ] p, k- [4 c$ A at ActionGroupDemo.main(ActionGroupDemo.java:67)# A0 U6 M& F8 [/ M9 E1 H
2 I! A! p2 x+ v y
) E. D5 G# Q1 P U
import swarm.objectbase.SwarmImpl;
: A4 l9 r$ G# p7 A0 Kimport swarm.objectbase.Swarm;
* H& y" q! L' S7 n6 J0 qimport swarm.activity.ScheduleImpl;
- v" o( X, f0 {+ J' A, [& K4 q$ \import swarm.activity.Activity;: g4 q2 Z3 R! J# Z+ [
import swarm.activity.ActionGroupImpl;
" U% h: C* E& k/ y" i0 u- wimport swarm.collections.ListImpl;9 w) i9 e E! @8 J( v
import swarm.defobj.Zone;
1 k0 m8 z4 q3 U" Cimport swarm.Globals;) [4 _: s0 u( p' ~. r7 v, k
import swarm.Selector;) P, @, Q( z% \+ E4 T0 W
import swarm.activity.ActionGroup;
! m7 L, F5 ~; H1 z i1 _class Agent {. X. A6 Y" c$ D( ^4 }# d9 x2 ~
char id;, X# R" A5 f( n4 i5 c6 \
( z5 Q; v' M1 l' p# T3 A Agent(char id) {) _" R! ~. ~" C1 [" q8 {
this.id = id;
* H% a% ?1 w, O0 o' y% u; l J+ E6 ]: H }( s9 X- a' c+ o6 v9 ?" p
' ~! ~" h# J" z: G( N5 j
public void agentStep() {
0 u- v& N3 C/ a. H$ M( I; J \ System.out.println(id + ":" + Globals.env.getCurrentTime());2 ]/ Y5 Z0 ?* v* R4 V
}" f( c6 V, }0 b% C2 {4 h
}' Y) u9 ]4 A, g! C
! C4 ~2 A/ l8 C) ?' ^9 q; u9 N$ t o
public class ActionGroupDemo extends SwarmImpl {- E! I) X$ ?( T" _7 ~
ScheduleImpl schedule;
( ?) v: R6 `6 U5 u ActionGroupImpl actionGroup;
* J( E: H. F( V% | M6 b ListImpl list;
2 O3 I. Y( u' c: l9 o' o% H, ` char Id = 'a'; e8 Z# P0 v9 s( @
* ]) C+ k+ P6 `) [5 p
ActionGroupDemo(Zone aZone) {
( E- u* z2 o# r' n- J super(aZone);
! z* q0 [7 X1 R list = new ListImpl(aZone);
, A N0 F* m' P2 N* `0 Z4 a" I* n swarmSetp();
/ ~/ S4 a; a3 c2 B" C actionGroup = new ActionGroupImpl(aZone);( `# ?0 e7 r3 n$ L
schedule = new ScheduleImpl(aZone);9 a9 a+ L7 D' t3 [4 R6 k3 E5 c; C
try {; I' c% ~; a) S8 J& t0 m" y1 {$ Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);' V' P& `2 _/ l' L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 I0 N5 ]& n# Z: P( s+ \( U
) o7 u1 i. f1 w1 k3 p
actionGroup.createActionForEach$message(list, agentSel);
+ h4 P: e& n8 I. u actionGroup.createActionTo$message(this, swarmSel);# O% r5 ^8 q7 M; ^) f
schedule.at$createAction(0, actionGroup);
" {6 {3 t( Q9 i8 G9 P, ] schedule.at$createAction(1, actionGroup);
b8 ]3 n: | e2 l/ G! Y5 Y! R/ s7 h schedule.at$createAction(2, actionGroup);3 P" [" P- e) s5 E8 G
\6 p' ?' I: x' J& n0 O* d% l } catch (Exception e) {
, |1 r4 t: Q# [5 f( _( t) O e.printStackTrace(System.err);+ i) `' x! }1 M4 v2 T2 V, I! S& n
//System.out.println(e);% n) A: D0 {+ ?5 v1 \
System.exit(1);
O7 t* ]( R: \) k7 ]$ @# H. h }
$ ~3 N4 C* H+ S' `4 g8 R5 [" s( T! w- u/ G" w1 F; r
! n* V1 X7 s e, R" A
}7 J" c+ U- a5 K0 `
1 [# S! M* i5 a4 @9 a6 M: W
private void swarmSetp() {$ e2 E- O1 o7 q3 F" |
list.addLast(new Agent(Id));
/ |- @8 q! ^! q4 M$ N8 f Id++;4 V/ m& H: ]9 C6 t0 I: q0 b
}! j l0 U: {; m+ \& g) Z3 o' y
8 H1 L3 R* g$ ^* q7 c: W0 z
public Activity activateIn(Swarm context) {0 |% p2 o! H4 v& f* e q
super.activateIn(context);
' `+ L4 W8 z. p1 ?2 ~! f" I schedule.activateIn(this);. @1 P i3 C; u; A* R/ C
return getActivity();& o" F: Y( Z* s7 {
}' B% j @0 Z6 l- R) }+ H0 |! x
' ]$ ^7 ?$ p+ p( x+ r public static void main(String[] args) {
% [3 B, I* e, k% d) h. Q( { Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- t4 ]3 I$ L4 F% n* u6 e Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 z* T6 d$ _- {6 u( ^- F
swarms.buildObjects();/ J! T/ d& [+ u& ^ v
swarms.buildActions();
* Z+ E; P# h" b7 O+ H$ w swarms.activateIn(null).run();0 P( r3 q( G4 H$ L' q
}. F8 L% y# u: R+ e/ J
+ m! B; _& g! z3 P0 R; _
} |
|