|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( f: w7 w. I3 p$ Y/ R" i' V9 x) o/ M4 Y5 I I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 A* Z* p' |! G7 }0 C1 G: K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. X& v$ p6 W" n
swarm.SignatureNotFoundException
# V" ^* _% i8 Q7 V- L4 r$ }1 D6 d at swarm.Selector.<init>(Selector.java:76), p8 D+ @+ t/ M/ D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 B% b0 p+ f& e4 I7 t at ActionGroupDemo.main(ActionGroupDemo.java:67)" G+ S* J1 H! Z; f
w9 S- q: L# u/ ^6 V3 l0 } l! q5 N) z) j% I
import swarm.objectbase.SwarmImpl;- s+ P' `3 p7 x4 B/ M
import swarm.objectbase.Swarm;# ?* C5 a' n# }" d1 q
import swarm.activity.ScheduleImpl;; D" o* O3 k; Q6 X% v/ ]
import swarm.activity.Activity;
# r4 h6 O' a; ?0 O# simport swarm.activity.ActionGroupImpl;
7 V3 h' y% a& [" E' Simport swarm.collections.ListImpl;
, ]1 |# l S1 W* b' D# Y% Y" mimport swarm.defobj.Zone;
2 y! c% ?0 E1 I8 R4 Nimport swarm.Globals; _- i3 i6 n$ @8 S+ y. i7 k
import swarm.Selector;1 g% I7 R# Z3 o" ^
import swarm.activity.ActionGroup; - ~, l& s7 u" w' y* Q! s4 C1 B
class Agent {, M% a. q. F" B( [. o
char id;
6 J7 E% I1 } d" w: R
1 s3 B. I* O4 @; a7 m Agent(char id) {
7 V' ]' P M# ]" K" v; R this.id = id;6 I4 V x$ c( l7 c( a% I$ ~9 Z
}
9 E( X" q! ~8 L. N& K9 z
' c# L t& }4 u. a n( E9 K public void agentStep() {
0 C& r# s& W0 E System.out.println(id + ":" + Globals.env.getCurrentTime());
* B7 {/ U% p% G/ J) o' R }
% g" A& \: o; w, ?$ q}; E3 {) |3 w7 D w0 ~$ A0 a5 i
g: f) w, P3 [3 G3 Opublic class ActionGroupDemo extends SwarmImpl {
3 _ O0 v8 ]% [2 \ K, B, ? ScheduleImpl schedule;, ?$ A$ Q. ^" E, R" o
ActionGroupImpl actionGroup;- C* ~- w" B- @2 G1 @8 w* {! ]. \
ListImpl list;
: }( j% y7 l' d( I& { char Id = 'a';4 G3 m% T5 ~! v! B" W, |
6 W. s% V+ S7 e1 |" J; n3 \3 p- Z
ActionGroupDemo(Zone aZone) {
4 v2 N. D* }7 @9 O( k! I super(aZone);$ o2 H8 V% K! _
list = new ListImpl(aZone);
! u, x' P2 `. U swarmSetp();2 B! E. e/ n& ^0 K- ^+ [% q3 ^, ]
actionGroup = new ActionGroupImpl(aZone);$ u7 f! u7 i+ k- h5 a
schedule = new ScheduleImpl(aZone);
" G! F8 s( {9 m' R try {
" z2 @. C$ \$ N( F$ q; Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 Q( a( X; s' Z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ ~7 z9 d) w, f* _
8 Z1 J. S3 m# a actionGroup.createActionForEach$message(list, agentSel);
2 Y+ C; R) a6 X2 }, [! t actionGroup.createActionTo$message(this, swarmSel);' d$ p5 e' t6 s9 _ V: w1 ]
schedule.at$createAction(0, actionGroup);
# A( f. U7 z. P9 d schedule.at$createAction(1, actionGroup);
% j5 w S# r \9 g0 Y schedule.at$createAction(2, actionGroup);
7 U2 j7 o: ^. D5 H$ ?
1 S. ^5 T& V( M* {* A3 l } catch (Exception e) {1 R! C' f$ H, {7 N' b$ f G
e.printStackTrace(System.err);
3 L8 l& B+ u" m+ u //System.out.println(e);
- I7 D) [# f: r0 F# E5 h% r System.exit(1);
; F; a$ C4 \+ m8 {( Z. i% o, |9 H1 _ }' C3 {; K, j5 @4 f; q
: q4 D( l3 T ^: f+ I
5 N8 O8 T3 o) ]& e$ E" c
}
! y2 G4 |6 o# S/ T" v' _9 q# s' h( K0 u4 w; I+ g1 z; V! ?
private void swarmSetp() {
# o5 X% _ S2 v* ]5 e8 p list.addLast(new Agent(Id));
7 B/ R$ m' C, d Id++;, g8 K( X% M* [* D _( z9 K$ J
}
4 _ E6 e. r, B2 x& V9 x
: [; x1 F* s1 V& T9 Z public Activity activateIn(Swarm context) {
* j4 {! A+ q) U3 D super.activateIn(context);% c+ g& a; G! f8 Y8 M+ j
schedule.activateIn(this);! d8 P1 O1 z. c- R P" {
return getActivity();
, {* G+ S, B: I) D+ k8 M4 e4 A }
% x1 X4 S3 i- @% k. ?9 r: |% Y7 D# U5 L3 Q) j. f! s5 ]; n
public static void main(String[] args) {
+ ]# [8 ~1 J+ | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 a- _7 W$ |6 z' } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 E& H( k/ P6 t% w' m4 e! _' V0 {
swarms.buildObjects();5 \, J& X. j2 Y: e6 _$ w% C& R
swarms.buildActions();2 x& W, ]. v# ?7 n; \* m- C/ x
swarms.activateIn(null).run();- B |& _- ?8 I$ _/ y
}( b& }5 l( Y1 g& L1 g5 C/ |
8 ^8 I' F1 z) N& c
} |
|