|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 Z% N$ Q* x: d3 o' X
* N/ Q. g1 e: |. l A k7 q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# u% L$ i$ U5 q* b* y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 x0 x4 k; h0 M4 e9 ]1 n$ z; ?
swarm.SignatureNotFoundException
- F6 N) U- K. c; z) c: V7 J+ R8 Q at swarm.Selector.<init>(Selector.java:76)
) O G! o6 M1 f- a- h at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& E1 [) G3 `' @# x0 ?
at ActionGroupDemo.main(ActionGroupDemo.java:67)6 G8 y8 E. |* [7 n6 u4 w4 N, Q
3 R$ f& d! `6 E4 Q) m1 y0 ~& Z. {9 L
$ i7 E/ q. Y: \0 Kimport swarm.objectbase.SwarmImpl;
G. u# s8 _% X" F) ^: V$ Vimport swarm.objectbase.Swarm;
& z( Q9 v, i0 V1 a2 s1 G- aimport swarm.activity.ScheduleImpl;. v' G5 S0 o" R& F; H. @) X
import swarm.activity.Activity;
& Q* Q5 i) l; l; Kimport swarm.activity.ActionGroupImpl;
+ i1 N! A3 {6 [$ E* \# L3 Aimport swarm.collections.ListImpl;
! Z" E2 E, V0 U: Ximport swarm.defobj.Zone; - o4 M/ j9 j3 l( b
import swarm.Globals;
7 U0 b/ j2 v- U* d `import swarm.Selector;
+ x0 h8 J* ~3 D4 z4 Jimport swarm.activity.ActionGroup; + U7 X! \3 x; s
class Agent {
! X% E" S; m3 @$ m4 H$ U' E' Z char id;* {& V" B7 U) D4 `1 \9 V* ^
; R) ^( F( }% h* Y Agent(char id) {
8 `) l' T+ V; l this.id = id;$ a+ F, k- B5 d4 J* r3 U$ Y
}
( I+ q. t( V" M8 {/ j3 g& N3 v+ s r) N4 K. i, f% d8 N8 l
public void agentStep() {
% Y* c ?% d0 g! L& x System.out.println(id + ":" + Globals.env.getCurrentTime());; o6 Y }0 ]* [
}
) K" C8 o. r" d' d- s}
* U( O* h$ P/ M3 @3 A0 o- N3 N
9 e x" Z- B+ w' r" H4 E" vpublic class ActionGroupDemo extends SwarmImpl {
. u, s, Q* u5 Q- J ScheduleImpl schedule;7 {# ]4 x& A9 L, C$ I2 T9 b
ActionGroupImpl actionGroup;
$ `' }; ~# J6 n7 Z ListImpl list;
& @; o! F( Z, P. N. _- N# O8 T+ ?8 _ char Id = 'a';3 d( n1 G' X/ Q1 t, L0 q$ S( [
4 K4 b8 E+ w i+ z5 j/ [5 W ActionGroupDemo(Zone aZone) {( I5 Z% O8 b, J# f s' s4 E
super(aZone);
! X6 D2 V3 u0 h9 r& Q4 D list = new ListImpl(aZone);
: M9 F; U5 G' r* {6 \ swarmSetp();5 ]; N$ w8 M" ]5 E ^
actionGroup = new ActionGroupImpl(aZone);8 l z. F' N+ x2 E+ Q9 H! J
schedule = new ScheduleImpl(aZone);
+ ` [. p3 j2 t% z" B; X& k try {. D! z# Y0 M& d; T+ t" J; p4 y& P, [* i
Selector agentSel = new Selector(Agent.class, "agentStep", false);( P r6 q& Y6 I J
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 S' z7 k- }! ?0 c
# e6 \; J: p) V4 b$ b actionGroup.createActionForEach$message(list, agentSel);
/ F) ` z- u, b, q" H actionGroup.createActionTo$message(this, swarmSel);
0 A3 e8 I, D% d: h6 X schedule.at$createAction(0, actionGroup);
: J1 ?" M$ `) r+ t schedule.at$createAction(1, actionGroup);
' \5 D* S( {" ^% q8 c! G schedule.at$createAction(2, actionGroup);
! D# o8 N% ^5 b
: h9 G, p% E' p7 B; B } catch (Exception e) {4 G2 S \2 P( @- e) k' B+ {+ l
e.printStackTrace(System.err);9 h$ P- k# |% ^6 ]) ~ U
//System.out.println(e);
9 [' G1 }4 y5 U& k4 W+ K% n6 B System.exit(1);2 c1 y( D% B$ @
} g2 K! Z+ w/ j% ~0 y
: |( @3 |4 v7 p7 h
/ N8 B; |: S! b8 e
}
U5 h- P) {% |# x, R; \) F: Q+ o6 A/ I2 A' x# X" Y4 i
private void swarmSetp() {
0 z% F& e# n6 g, O& P list.addLast(new Agent(Id));
1 U) a ?6 d6 w0 L# l! y5 Y# R Id++;
) g8 l3 X: q0 R$ [" M' w }
* m# a4 y3 H% D0 a
7 E" p. [! F0 k& e& q: a public Activity activateIn(Swarm context) {( a: h9 S) X1 `) H6 d, Z T
super.activateIn(context);) }6 O* l2 U5 r0 C* }
schedule.activateIn(this);$ q) u+ l6 t4 c# Z* P
return getActivity();, T: C3 f% ~9 ~, y9 f& J) q2 w
}) j9 W" j4 s3 I
/ s8 s- _8 L- U8 \( f5 V
public static void main(String[] args) {
8 m3 Y* j4 a: N h& U# s: E% ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
e, Q! x4 c! S, m/ C Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 V9 y1 \) N) H% R2 t swarms.buildObjects();. k8 e' }' g1 ^# U) b% g G
swarms.buildActions();& G6 {6 z8 N: |& ?: I# S, k8 P
swarms.activateIn(null).run();( O4 S# |1 }6 \7 n/ ?: [3 f
}
; E" o* H3 K0 y4 m! N# ?. P6 r9 ?- r9 g' Y. j6 m1 r( A4 j% I) d
} |
|