|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . ]9 m" |$ V# g) n- _" q. g
4 I9 F8 C; _+ n9 w8 [2 a7 M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 u: y& }& b* d' Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. p/ d0 q6 ^" U2 T( g( }9 Fswarm.SignatureNotFoundException. ~- T% I3 i6 ^. P+ l! z
at swarm.Selector.<init>(Selector.java:76)
; b: k5 [6 e/ }- H# j at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* a% t+ t* B G, F& C at ActionGroupDemo.main(ActionGroupDemo.java:67)" g) a% V2 g: U( _' q' u) s
8 H3 `5 [1 e. Z2 B1 g; q
F2 c& ]* V, g) [9 |! C# mimport swarm.objectbase.SwarmImpl;
8 V, `+ E9 S- g% Ximport swarm.objectbase.Swarm;
b& c2 l/ g. H7 Z1 |- ximport swarm.activity.ScheduleImpl;
& [9 s6 b: D( L' uimport swarm.activity.Activity;
( P4 c, @! f; B2 Bimport swarm.activity.ActionGroupImpl;& w" Q2 e6 }; m# h
import swarm.collections.ListImpl;
. M! A: D+ r J# f) Iimport swarm.defobj.Zone;
5 B. x% W$ d# himport swarm.Globals;! @+ R# B9 d d( i6 y
import swarm.Selector;0 [0 x* n7 ]. K& u: Q
import swarm.activity.ActionGroup;
4 Y6 g, N/ l# \class Agent {
) m$ n+ [2 W; p0 T' D5 L" ? char id;
4 f' d, E8 ?. ` u
Z1 C9 Z: j/ E7 s7 I Agent(char id) {/ ~' K& i9 H0 y, w! C+ G3 n
this.id = id;
/ d4 C1 e( E& u0 A } `2 w1 p! l: ]
1 x2 p2 j8 G( l1 i! m public void agentStep() {
" E( F8 J" I1 Q4 m2 T. L* ?& S System.out.println(id + ":" + Globals.env.getCurrentTime());; [# a6 a' ~' M# P4 K% n
}: w3 m8 Q8 Y5 Q
}/ z2 w2 c# [* G! i: P8 R4 v9 r
; T" V* X* T( J3 L: j6 ?public class ActionGroupDemo extends SwarmImpl {
; T0 @& T% C3 | f8 Z) G! ^$ N ScheduleImpl schedule; ^: w; s+ _# q, x2 C* [1 w% @$ w
ActionGroupImpl actionGroup;: u4 u# c- T$ p
ListImpl list;
, R6 Z9 S2 i. h! B. Z, ~+ P char Id = 'a';$ j' }2 g: }- \. z4 ~$ l# X
' X P, s/ ?3 p" K W. J
ActionGroupDemo(Zone aZone) {( w3 G7 ^% \) E, d
super(aZone);
8 q0 h) v+ w" K- X& o' ?8 C; S; S1 o list = new ListImpl(aZone);1 J2 S4 J' p) l0 z1 J3 U
swarmSetp();
7 X8 K1 d. K2 @9 V7 h( g k4 [$ s actionGroup = new ActionGroupImpl(aZone);
% m4 t: a6 ^ u6 j1 q6 ] schedule = new ScheduleImpl(aZone);1 r; i/ q2 s) y3 m& W
try {4 G% h1 n* f: y/ L
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" G) i( u# }) l( Z: h* [2 r Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. d5 Q! D U/ h) V* B' p
/ T3 j; B: m3 L actionGroup.createActionForEach$message(list, agentSel);" Q. `6 u- v' A! M' C% G
actionGroup.createActionTo$message(this, swarmSel);/ p" k {, t1 p2 j1 Y# F
schedule.at$createAction(0, actionGroup);
h/ f, N2 L5 D6 B2 S schedule.at$createAction(1, actionGroup);
0 k- ?/ i) D* A9 D; U. n5 W3 t schedule.at$createAction(2, actionGroup);6 m1 v c m& P; _) g+ S
; {9 p8 @0 s& E3 i2 {5 k } catch (Exception e) {
# h/ d7 d: m& R1 r' v! f e.printStackTrace(System.err);& k9 m6 B: G( A3 I5 c" i
//System.out.println(e);* |( D+ A! @1 Y1 l- U3 _/ s
System.exit(1);
1 [6 I7 x$ T9 j }7 |4 O- v6 i, `
2 p/ u j" \: |. f3 I
% Z j7 m& R1 T2 h% g( Y }6 J5 N8 X4 [# H0 W
* l5 g0 @. y( |# F2 V9 A
private void swarmSetp() {
/ S, ]0 w% k6 k7 m( n2 K& g4 A list.addLast(new Agent(Id));
3 {) k5 K. y4 V' @5 o0 v Id++;2 J9 v4 x' L7 w8 i/ Y, x; |
}
! V- } [% m: ]6 V) T
+ {* q# G' l. y. y7 F) u8 v* N" P public Activity activateIn(Swarm context) {
) t7 L, B8 w5 C% K1 ] super.activateIn(context);5 {" e, ~0 |7 K$ e* K$ m
schedule.activateIn(this);
, S+ u. @9 \7 F5 v5 K return getActivity();
7 M3 @6 V8 }1 T. D; [: \1 a/ D% J }
/ W4 \% w3 ^7 S \3 n
$ P" i- e3 i& g public static void main(String[] args) {
; n4 R0 @0 O6 {1 o* h* R9 k. Z- u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' s1 [; P- y7 P, q* o. V( u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 }1 t+ F# L/ ~0 K+ N$ C
swarms.buildObjects();7 e! x& `) F0 _- `
swarms.buildActions();# o' k8 q3 t1 l% }5 F9 {
swarms.activateIn(null).run();
7 l d: T# w M( h( u }
+ r8 u" b2 G$ ^$ z6 k6 W$ n: ^& a/ l2 }6 }1 P% K0 ]8 d9 C* r( e
} |
|