|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
m- z2 U' Z2 S; `. m4 N
8 v% I p5 w' w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: f1 B; w! T* F! f4 ^3 U* C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 `- C7 F- |9 y; mswarm.SignatureNotFoundException
8 n* Z* R3 M' P0 Z at swarm.Selector.<init>(Selector.java:76)7 ^% _5 r( S; R' |' T# J
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) S9 L# e+ H/ a- R$ N: @: W at ActionGroupDemo.main(ActionGroupDemo.java:67): v$ @0 f. r3 h% r5 q( p3 i2 M. K
$ p; G( u% f) y( b% t& z( b h9 N
import swarm.objectbase.SwarmImpl;0 S. E4 V: {6 S4 g" m
import swarm.objectbase.Swarm;' Z; @* v* ]) M! \+ X- O- i& G
import swarm.activity.ScheduleImpl;
/ c7 R& V/ S8 G: o% Rimport swarm.activity.Activity;& s+ \9 t7 @) h7 U
import swarm.activity.ActionGroupImpl;' {/ `9 G. T2 M8 d7 l
import swarm.collections.ListImpl;
- d& f& Q3 @& Y3 r0 vimport swarm.defobj.Zone;
6 [4 [( n# m0 zimport swarm.Globals;* `& _8 R- j G- M# q4 d: M- `
import swarm.Selector;
" Y3 T) A6 b# O: V0 v! X# ?2 vimport swarm.activity.ActionGroup;
2 m/ v9 Q9 Y6 t* i1 @class Agent {
7 S" Y8 c1 } P( \/ T. H char id;
" U* i: C! ^/ m2 U- I C4 N
! ?% C9 w+ d6 S) `# d& p Agent(char id) {; Z% H, t: T( i* A
this.id = id;; z9 ^/ [; z q6 x! W, h
}; f+ d& P! o5 M8 r* }+ B7 K# H' p) U
9 X) r# Q1 y; q8 k- Y public void agentStep() {
$ Y1 U& K. V& g d; U6 ~8 x System.out.println(id + ":" + Globals.env.getCurrentTime());+ A3 p2 U* q8 u1 x+ U# K. Q. F) T
}' `/ y* _8 l& f+ c4 s% i* E3 G
}' J5 O3 U" w( n$ C- a2 c u! n
/ Z. W' s- B6 F2 h
public class ActionGroupDemo extends SwarmImpl {- }2 ^3 W+ @7 r6 @
ScheduleImpl schedule;8 o+ O: C/ _" b! n4 ]" {
ActionGroupImpl actionGroup;' I% g% ~# N, g* D6 z
ListImpl list;
4 P; F/ w3 S* c# f! T0 r3 E! _ char Id = 'a';
: }0 S# O/ a6 G* W1 o! P$ c! ?- m4 t; i/ ?0 H% @# H7 f
ActionGroupDemo(Zone aZone) {5 S& ]/ \- e/ Z V. V1 x% M
super(aZone);2 J2 b, \8 J0 S1 }- i3 D
list = new ListImpl(aZone);' o* r9 J- U5 t, I) L# C' `2 `7 L
swarmSetp();
, N) D0 x, e e9 S" C/ q actionGroup = new ActionGroupImpl(aZone);
; B, x! _0 Y/ ] schedule = new ScheduleImpl(aZone);
# J2 u0 O+ y. @: l" h6 t; }* R0 b try {
5 n2 a2 }# N! \ Selector agentSel = new Selector(Agent.class, "agentStep", false);4 B' `9 R8 Z# r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 z5 s9 N3 A5 F" ~4 R3 J, Z
! H. _, V6 M7 M% ]7 u, d) T; u+ R- F actionGroup.createActionForEach$message(list, agentSel);
( N, t) J+ b( E C6 R* g6 t actionGroup.createActionTo$message(this, swarmSel);3 s( u$ K, D6 r+ X0 L2 G* D( T
schedule.at$createAction(0, actionGroup);4 J, R' w; q! P' e5 h6 n
schedule.at$createAction(1, actionGroup);
2 H3 x$ f0 [; ^' Z3 R$ k0 d schedule.at$createAction(2, actionGroup);
d9 U8 F% y* ]4 B8 f" G" U9 V: t, C
$ s$ o8 N$ L! S } catch (Exception e) {+ Q! x! h, `" S+ V$ c. z5 d4 r
e.printStackTrace(System.err);
- K) V/ a9 W3 ^/ z: i+ {: X //System.out.println(e);
( B; \+ f! D+ J% ]1 u System.exit(1);
3 _1 t5 Y' F& {7 H( Z }- K0 J2 I) Q Z4 b) s
% }; l% ]2 X* y* V$ f% U( x
' y; Z6 I1 w7 |8 ~: m' v- g }5 |' k: C, k& I/ z. l8 k+ `* [
6 N- `! J3 N/ g7 h. Y private void swarmSetp() {
7 Q' d. T+ u2 a4 `( S1 x" M list.addLast(new Agent(Id));
% E& E/ l* Z9 P% n+ _2 S* Z Id++;2 C$ O3 O, Z5 U
}
1 z0 }2 G, s2 [, k( J; w: ` V+ }! z
public Activity activateIn(Swarm context) {
6 w3 h8 V2 R# i: U$ Z3 A. _* w% o super.activateIn(context);
. |, E1 v% @# t: B- m% i1 P schedule.activateIn(this);- l g2 W& L$ }" T2 M* c
return getActivity();8 O5 y) u5 r3 N
}, g2 M- Y# h! O$ |# \
' v% F$ ?8 v( g
public static void main(String[] args) { r& u$ f* j. n6 }- c1 J9 j# ^" Z0 P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 N) U' H+ `% O7 q0 v Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' l" G0 t9 `& u; X6 @( y" Y; p6 @ swarms.buildObjects();
; z- H6 V& ^6 a swarms.buildActions();
5 |, t3 Q- F8 Y1 D4 e t swarms.activateIn(null).run();
# v; b& S$ |" P& q& p9 Z }
& S8 `1 c( v5 [3 N
4 O% `" q' Z4 M% \" o% Y. G& q$ z} |
|