|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ L' c4 t; t2 k" ~, K" m% l& V1 G% _& G' T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 i3 R* k: q3 M. N7 l* c5 |! W1 X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 }2 C% R9 R; }% P. z/ v
swarm.SignatureNotFoundException4 }: m) O9 ?9 h. W* a. H
at swarm.Selector.<init>(Selector.java:76)) Z, H& Z+ @8 q& j! N8 q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ {( N# s1 I9 w& E8 F# u; e' \; `3 ?
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% E# o4 C! j$ ^1 B# `' ^5 _$ {, x8 ?$ f5 L1 Z
/ C8 |1 ~+ W5 M N+ A/ f# K: h
import swarm.objectbase.SwarmImpl;: F. p+ x# Q+ R' Z) f+ P* O ]# {
import swarm.objectbase.Swarm;' b, @% E7 m+ Q* J, A: V b% q3 H' s
import swarm.activity.ScheduleImpl;
; L! R" n1 r, Qimport swarm.activity.Activity;# k9 J4 l$ ]+ v4 G0 s+ b( F
import swarm.activity.ActionGroupImpl;
1 j3 n! M! p* A3 Iimport swarm.collections.ListImpl;. ~* \8 ?4 o% p3 V' p& L" j" N
import swarm.defobj.Zone;
5 J* W3 [$ `5 q) W; limport swarm.Globals;
, Y7 ~4 a; N* v; C* l- z1 ?( }import swarm.Selector;
) X, r+ c5 K2 G' fimport swarm.activity.ActionGroup; ) l- a# M3 s! U6 U3 ?; H4 d# x8 h
class Agent {
' c f; o' K- @) d4 I char id;
# r4 |& n7 ?7 K* p
+ r" r0 I1 \7 O9 I Agent(char id) {, V/ c/ ^2 p; O# |: j
this.id = id;! M0 z0 r, j, b# _% M- p1 S
}: p) f1 L* s( l7 b8 M/ y( a0 l
) N" Q* H1 I* Q6 ^8 j5 Q
public void agentStep() {
& z7 ]- N) M1 H System.out.println(id + ":" + Globals.env.getCurrentTime());. z$ A1 S& v# ~' [
}
2 D/ b% [6 Y6 g3 B}+ z( `$ p% M+ f& g; |
4 Q) K/ R @: u0 B6 q/ y* V
public class ActionGroupDemo extends SwarmImpl {
& u8 ^# t/ \7 ^4 j9 t ScheduleImpl schedule;) j, K6 W, ]+ u* J# [
ActionGroupImpl actionGroup;- s, y% J# {5 h
ListImpl list;
4 W- L# e7 V9 q/ S char Id = 'a';" L- y9 v" |4 d+ `
3 E! c3 j1 T- ^$ B6 c1 R0 p | ActionGroupDemo(Zone aZone) {
# S1 u( b* N1 E2 |, N super(aZone);" `) M5 g: r% |: u, ~) a
list = new ListImpl(aZone);1 Y0 L, z/ r( j8 X
swarmSetp();6 f' R9 t9 @* l" D' P$ x
actionGroup = new ActionGroupImpl(aZone);0 y9 `* \7 A! p0 v
schedule = new ScheduleImpl(aZone);
" E0 D; z4 l2 h7 ~' u" B0 m @ try {# a, d9 w9 z; I' P+ G7 M$ T3 f
Selector agentSel = new Selector(Agent.class, "agentStep", false);' @9 X$ B6 P. [8 X2 F( D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( J; z/ a2 W7 v
0 y3 t+ r5 f, B4 j, A actionGroup.createActionForEach$message(list, agentSel);5 w! d3 {5 K5 T' e) A! c
actionGroup.createActionTo$message(this, swarmSel);
" G/ `. f8 ?! C schedule.at$createAction(0, actionGroup);
- Q( C2 x; Y3 I4 z/ W) s, j schedule.at$createAction(1, actionGroup);/ h1 Q H1 l& T# G0 Q: k8 L
schedule.at$createAction(2, actionGroup);, I: r3 m4 U: Y3 m/ g0 K4 X1 f
, G* X7 P2 f @; |
} catch (Exception e) {* U+ Z! [) s2 i: I. e0 O6 a7 G
e.printStackTrace(System.err);" x+ J9 t8 F. [9 P. q0 X% L3 Y
//System.out.println(e);
. X ] n& ]% s- m2 F System.exit(1);* e, ~6 i1 m5 y# }. o3 M" q
}
* X& O, \, ^/ _3 S
3 i9 Z3 a& W1 W: [
1 |: u$ n; t" ?' y' r7 Y }: P; ?2 M8 L7 E8 U6 J1 S9 j" r; {
' V! e2 @& v4 L8 n1 u4 }
private void swarmSetp() {
7 Y6 L) Z) \$ F: Z2 ~, X- r0 e% b list.addLast(new Agent(Id));
. @# w' w' M! P- A6 G$ z5 N Id++;
5 @; s K- s5 F& i: n Q }
$ T& |% o2 I( K3 O6 ]+ u0 \( i+ T% {' @3 e5 a
public Activity activateIn(Swarm context) {
- A# D' `4 @6 c" v super.activateIn(context);
4 ~; r- K. s3 Y& G schedule.activateIn(this);+ M: p' `% t6 G7 R! k8 B
return getActivity();. p6 ~. s: ~ J
}% s# |, {( b# L! L
; X6 p9 A5 u# Z' ]
public static void main(String[] args) {
9 E1 L. m# f$ ?5 c/ b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# S& o G3 a3 X Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# V$ E0 X" ~4 v6 X0 K, H6 p swarms.buildObjects();0 d; F2 s* y v" x/ j2 I' D+ Q
swarms.buildActions();7 K/ V6 b* y( h: A0 M8 f
swarms.activateIn(null).run();
. j3 A+ s# F ^ }. T' y g' ]' z. `/ n" y* X2 a" \7 M
+ v# m8 l; _4 T- H" t} |
|