|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% B- Z! s* R1 F, D
7 b' k' e( |" ~9 U& w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 T1 ?4 @- z& O8 J8 @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 Y1 G2 v0 \ \
swarm.SignatureNotFoundException! e2 k0 x7 L; {2 n
at swarm.Selector.<init>(Selector.java:76)$ }6 P9 l( A$ ~3 r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37) ~9 X5 Y! U% G! ^& p
at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ y6 w8 B. N1 O5 l! m: M& n" f! Y7 g. h7 m/ c
* }3 f, ~- Y8 N& timport swarm.objectbase.SwarmImpl;$ v- }8 e4 S3 D; z
import swarm.objectbase.Swarm;3 ]. n% M# p- c2 j% A
import swarm.activity.ScheduleImpl;2 c4 _/ |/ y/ ~' O$ i0 G- _) l5 g
import swarm.activity.Activity;' S$ T$ \# a c0 J2 m% f
import swarm.activity.ActionGroupImpl;5 x8 `* U s$ P, W# C
import swarm.collections.ListImpl;' U7 L& X9 p1 l1 y9 l
import swarm.defobj.Zone;
e" F& e, h$ H3 m" H9 I: w( K' P! nimport swarm.Globals;9 N3 W+ W( i1 {* s2 |
import swarm.Selector;8 |8 Q0 h' u! ]9 S, m& M
import swarm.activity.ActionGroup;
V! ~( s& Q1 Q; _class Agent {
4 y: P! _: n8 y8 D, ? char id;
" K$ D; R' L( j* \ A% o, j7 @6 w( L( t+ Q. q- V- @. ?1 p$ z0 ?/ D
Agent(char id) {
& D3 F* m+ q# g this.id = id;
. z& B4 c4 d7 g$ x: R" b }
% T1 E* [- @, @" Q D9 W
! B- g% `6 h0 i/ R9 ] public void agentStep() {
" S4 o) o o8 K( x* H# C System.out.println(id + ":" + Globals.env.getCurrentTime());
3 G' i( ]' m7 } }$ w) b9 L( x1 q$ H8 z: }8 d
}
' s$ \( x |, i3 o: _* y) o) w% g4 z1 e
public class ActionGroupDemo extends SwarmImpl {
5 g' e5 P0 q2 q2 X: d' F, _5 b ScheduleImpl schedule;$ N; N( S5 d3 c6 ]) {" J5 O1 k% J
ActionGroupImpl actionGroup;0 V2 M- ~3 S% t( M/ s, x7 B4 g5 z
ListImpl list;
' \, J8 v. N9 L: ?3 _3 L+ G( F3 M# M char Id = 'a';$ i3 K- X3 r7 I2 \& k
! l# c* r; z9 ]* a4 p; F$ K9 i* }& c4 A ActionGroupDemo(Zone aZone) {
1 v: G* j, ]8 o% I$ n3 y: J super(aZone);2 G' s( m3 u$ [- f1 @2 \5 V
list = new ListImpl(aZone);
9 v8 y, X7 d i3 U, ~ swarmSetp();' J- u5 s. E5 v7 c: r: p2 }
actionGroup = new ActionGroupImpl(aZone);' ~* R u; Z$ A7 M8 X
schedule = new ScheduleImpl(aZone);
+ X' C4 g. g8 W! I: Y0 J try {( A& F2 e! U9 d8 o7 a, B, k
Selector agentSel = new Selector(Agent.class, "agentStep", false);; Y' Q# E9 {' ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, l/ I2 C0 h5 o' c; m; x
1 _) E; d- W# \% I9 S
actionGroup.createActionForEach$message(list, agentSel);
/ i. h! v( i7 M; z actionGroup.createActionTo$message(this, swarmSel);* l1 U# [% s6 p
schedule.at$createAction(0, actionGroup);0 d# C2 v2 j4 H3 D7 D P! }
schedule.at$createAction(1, actionGroup);# D8 M& Z. [6 I$ i& r- i+ w
schedule.at$createAction(2, actionGroup);+ g) F8 j9 t/ e; {3 r# p) O; Q
( n) \- u( R- V9 ~
} catch (Exception e) {3 }; Q3 N3 b8 r; M* i) l9 p
e.printStackTrace(System.err);
6 {3 y0 B% L# s) o1 D //System.out.println(e);, ^* N# m/ D1 P4 p
System.exit(1);% \ }. p, z. x6 t6 B7 R/ N
}6 x1 c3 ^- ~6 Z0 A6 L
( Q, v0 X4 X0 V3 z R- X( C- n2 h1 y
}
4 d, ~$ r5 N4 b1 _& M* Q0 k% k2 b+ L0 n F R1 Q4 _! T- z1 C
private void swarmSetp() {
. C1 M& C% U1 S2 P* t* k list.addLast(new Agent(Id));
, @$ e H! \' L$ T Id++;
. w% H" ^; ~! E8 v }
: c$ z4 e6 I6 |4 r/ @* \- x& n
3 X! q8 q, {! x public Activity activateIn(Swarm context) {
0 n1 G1 R5 [- N. i; _2 a$ O super.activateIn(context);
3 W) n8 Y O. E6 m schedule.activateIn(this);1 i7 M! L) a- V5 Y
return getActivity();
1 J3 w9 E- K0 w: T e j }6 Q: Z" m' a2 X# Z( W% l- P3 H% V
* N/ l& Y2 F1 x public static void main(String[] args) {: w2 |* t: @( k9 P% T0 k& K( J( K
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 I! k! H' _. x' x3 } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 a. D8 Z8 a1 [/ w* W- B4 V swarms.buildObjects();0 o& @( k: ]) h8 c+ _
swarms.buildActions();; h. U7 ^ s8 ?! n+ |+ P1 G2 a
swarms.activateIn(null).run();- M% b1 j; Q0 q/ F; Q- A/ p/ t1 p
}
* \! J4 D: W7 @0 W- {- j* E$ E' N8 T+ s6 `/ z5 s& M
} |
|