|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 H' Q4 y, H7 T0 B
+ Z8 Z" G5 n9 N+ A, ^0 r2 t* A7 r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) h4 e, @, u, a7 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 V' b& S5 d' _8 d Kswarm.SignatureNotFoundException
7 b! L& [9 T0 u1 j' U at swarm.Selector.<init>(Selector.java:76)
( O( _+ U* x$ E" B4 h+ `2 _% E4 E+ K at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: e3 c# ~9 A8 _/ s at ActionGroupDemo.main(ActionGroupDemo.java:67)( j4 X7 k; W* M9 o8 h: v# a
2 n( p: S4 h: S) K" C2 q" C7 M2 q
* [& L4 Q4 t# B! w8 l$ A( Qimport swarm.objectbase.SwarmImpl;2 }7 R# P# F! a2 f1 ?1 k$ _
import swarm.objectbase.Swarm;% M3 w/ V0 V' k# a7 }
import swarm.activity.ScheduleImpl;
; P0 U! P$ e- E$ y( W9 [& H X" limport swarm.activity.Activity;2 {1 I' p3 E4 l
import swarm.activity.ActionGroupImpl;% v6 G- U$ d+ A
import swarm.collections.ListImpl;9 S1 e6 e, L5 {4 o3 ]9 |
import swarm.defobj.Zone; + V; y! r5 ]6 O' M- i' ^
import swarm.Globals;
$ ?8 U( G5 B7 g9 _! gimport swarm.Selector;
. l6 c# B) Q- _import swarm.activity.ActionGroup; 5 `0 e* N! _; L; O' s0 |5 {
class Agent {, g2 M, K! r6 d( ^ Z4 N$ ^
char id;
5 @) R3 }* j R3 B: R% v
' L0 j J! q/ Y& \ Agent(char id) {4 v7 R" L& ~( _; d' N& F( b" V* Y
this.id = id;
" t5 ?! I) N, D$ T }
' n: a, M4 u8 f3 b3 {$ B
* d, k0 p ?7 J, c' v public void agentStep() {3 Y" H5 J2 Q. r- Y
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ O& j7 L$ t- M1 h! N7 n }6 A" d S, B" n4 k( P- J9 ~
}
- f, ~+ O- A% [* Z# e8 O. l* ?+ c) t `5 S) T; R
public class ActionGroupDemo extends SwarmImpl {+ s, }! d/ Q0 C9 x$ \
ScheduleImpl schedule;
* w1 z% B w- R# D m ActionGroupImpl actionGroup;
7 [% w& l3 }) o9 h- U5 I ListImpl list;
/ }* z6 e6 Z* N; w2 o char Id = 'a';
) t" c# A" i5 n. O' k) |" c ?5 h: {2 z Q# v7 z c' c# J! T
ActionGroupDemo(Zone aZone) {0 _* n/ }: y* r+ }( J; y1 d& F( s
super(aZone);
& h% s J" y5 I1 A# D. Z. H list = new ListImpl(aZone);6 {- F1 i# L) R! L O3 J- |
swarmSetp();
# A; r4 l' y# E. e; { actionGroup = new ActionGroupImpl(aZone);
) g2 B# p+ B/ b; c schedule = new ScheduleImpl(aZone);0 c2 ^. Q" C3 x- r
try {
6 H S( E9 w4 e0 ]$ y* P Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 o! ~% g8 L2 S* y. Z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ S3 t% V! a4 w) w: l
0 j# a, ^4 F% L5 e! E$ I8 ^8 D/ Q actionGroup.createActionForEach$message(list, agentSel);9 `' f1 \: m; n+ M' o. S5 ]* R/ b
actionGroup.createActionTo$message(this, swarmSel);- N$ w Y4 F" s* s6 ]4 W
schedule.at$createAction(0, actionGroup);
" O( O' v0 T( g/ p7 n0 f; z6 D: B9 g7 g schedule.at$createAction(1, actionGroup);6 ~# M) g m, w% y( |7 ~
schedule.at$createAction(2, actionGroup);
: \. A( |5 C# n9 m+ Q& A- R8 b6 a& Y2 d9 _7 n* y# l4 A
} catch (Exception e) {
0 E+ q8 S% |5 d5 [2 P e.printStackTrace(System.err);
4 U2 Z6 \, F9 L; k9 E5 n& e //System.out.println(e);
: N* ^: x, f0 A/ f System.exit(1);
% E$ [+ ?. c$ t' F# v" G }
1 ]& e5 G7 O \
+ P y2 `" S% |, l) q2 f% c0 w
) Y/ w7 t1 C/ @0 K5 f5 r' D }
, z' O- ^2 M! K9 l0 a2 }" } K# x: Y: Q/ p) c: n0 r# e6 a
private void swarmSetp() {7 u$ ~$ ^+ y3 C! c( |# @( K
list.addLast(new Agent(Id));- X) V5 f$ S, U! o( D9 C* {
Id++;; f N- s" L9 X
}
) V" y1 r7 h2 a$ X/ O9 r+ e" \5 p7 o: P6 y2 R1 i
public Activity activateIn(Swarm context) {
$ x4 n# }( E8 d) c+ g+ ? super.activateIn(context);8 q5 B5 r" \8 ?- B& v) h, e/ z7 S
schedule.activateIn(this);* K, `* i9 H" b( D9 Y3 q
return getActivity();1 k. _: @* B. Q$ i9 ]( Y: [
}& R. d+ V+ y. r. O$ ?
( r. ~5 u- \$ l. }
public static void main(String[] args) {
3 D! P N8 U* R; M3 l7 b& Y( y3 w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 _9 N8 E$ K/ Y0 H
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
\- f4 a; B! r' V3 _, q. A. S, p swarms.buildObjects();
6 u$ `& }% b9 q6 L swarms.buildActions();; w7 D1 [# b+ s; S
swarms.activateIn(null).run();; B8 N4 }: D. Y
}
$ g7 l* [; J$ ?: X# A& s& b. }3 d& T
! i4 G) d& }. L} |
|