|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " s6 K$ p, L/ Q6 Q' U& n' `
9 \( ]: D9 H9 T! R: E+ M% q5 C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: I0 l9 Y& F& Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 q, X% n# y, p; S/ j
swarm.SignatureNotFoundException k8 ?" V, e$ D# v# i
at swarm.Selector.<init>(Selector.java:76)
0 u& ]* H3 r: U+ _& L) z' P at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 o& |+ J! O* c/ P/ C- K at ActionGroupDemo.main(ActionGroupDemo.java:67)! p6 b5 B( H% t$ x2 r# }8 v3 {
% |+ U+ ?: R, \+ X
1 ?8 w% N7 A9 ~# p9 _import swarm.objectbase.SwarmImpl;8 m9 I1 k$ o" d7 ?, |( k& r
import swarm.objectbase.Swarm;
0 S3 M5 H0 B3 ?* l" u4 x+ Qimport swarm.activity.ScheduleImpl;0 U/ Q+ O) n# D
import swarm.activity.Activity;
, K% H; x2 B$ H* |* h. p, Aimport swarm.activity.ActionGroupImpl;
5 w( S- `. O8 e9 aimport swarm.collections.ListImpl;! W5 T- y- D; i* h
import swarm.defobj.Zone;
, |9 U: r% I3 G) e2 I- N' A" z, Z+ @import swarm.Globals;
/ N V. J. t, R9 O2 U# k/ J+ E+ ^import swarm.Selector;
* x& f: k0 b5 c2 Jimport swarm.activity.ActionGroup; + T# \ R G$ D' V# s. [: {- U; N
class Agent {
! B( g+ j7 o" v3 l0 z7 x& Q char id;6 ^5 H, R! w" q' T( J( Z
3 u, a# t; n. i) z2 K Agent(char id) {5 V3 H" D! p; o' Z, s/ [" Z( E
this.id = id;
) G) e% T5 j/ b9 W- u M }
7 ~- ?& e) D( O- G0 f& _5 D. E$ c C8 w- ?0 q
public void agentStep() {
% j* i I( z6 O$ P. @, a System.out.println(id + ":" + Globals.env.getCurrentTime());) z; n+ n+ T8 w2 |* b
}: }5 b) A: R4 u k
}
$ ?. g7 }5 Y B0 E: ^( J% s
4 V% [7 I: B, H: \public class ActionGroupDemo extends SwarmImpl {
6 d: J! n, I& [; s3 l ScheduleImpl schedule;; ^0 @! n) ^2 H' y4 o! B$ R
ActionGroupImpl actionGroup;# a4 g B% [6 U
ListImpl list;
. e2 x1 h, Z T! k0 @* B6 U( q char Id = 'a';! d+ d/ g9 q+ F/ L" N
' c x& j, b6 g P9 E2 b ActionGroupDemo(Zone aZone) {
* M9 h+ P" I* J- f4 N super(aZone);& O: j/ ^" ], R! ~% h# s7 u3 j9 ]% [' B
list = new ListImpl(aZone);
/ }- v6 r2 p/ Z9 g swarmSetp();
; K& O- k. T7 f& |1 } actionGroup = new ActionGroupImpl(aZone);
( ~( e. V- D* p3 u$ L6 P. i* T- T2 H schedule = new ScheduleImpl(aZone);: T9 Y! R2 A a0 J
try {
$ } t; i; p: q$ P/ @* M: x Selector agentSel = new Selector(Agent.class, "agentStep", false);2 a' _, P# |. K2 q( b
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; K$ u$ G) i+ J5 k! T
6 O+ h1 i& h. U0 p* e N
actionGroup.createActionForEach$message(list, agentSel);
4 F$ D" s6 m* | F actionGroup.createActionTo$message(this, swarmSel);
% d( |) n4 W! W* B* ?: s* ` schedule.at$createAction(0, actionGroup);
! P3 o+ p; ^+ H' v1 x3 N$ g schedule.at$createAction(1, actionGroup);
6 C6 s. V' N: x schedule.at$createAction(2, actionGroup);0 g V+ f* R: F7 U
K9 N9 \) x/ O. S
} catch (Exception e) {1 c4 |2 e/ Q. Q1 y( W4 ^
e.printStackTrace(System.err);3 Q* B' z, \5 c0 w( p
//System.out.println(e);
5 G' i$ H4 r) G3 o/ Q$ E9 S System.exit(1);* Z) O& \+ x1 _5 S; M
}
i& C+ N. X0 C+ i( `$ x/ p" Z8 d' ^# X V3 F W: r- G" {; v V3 u* F
( X* ~' s9 F& G: ]6 E: q
}$ T; K$ R5 e* \9 v3 A: R
3 P" u& e# V0 Y) k, o% j private void swarmSetp() {
6 @: b% [9 H6 c: d5 a9 N list.addLast(new Agent(Id));
' J8 C v8 Y7 {1 s% R' r Id++;
9 K; W9 X8 {: w }
4 B. T4 a) W+ }0 N7 c2 l& |4 G+ `+ c1 B0 ]
public Activity activateIn(Swarm context) {
7 B$ V- @/ y" L super.activateIn(context);
# {4 s6 A0 @) i o, C schedule.activateIn(this);8 }5 O8 p3 N8 o$ I# _) g& u' E2 a
return getActivity();
: r, u1 I. p) D1 X% U }
9 M2 B2 Z" s& }- _9 p
Y& s. j6 `! r m/ f public static void main(String[] args) {0 C4 i' h8 K2 ?& R- i5 e' g% ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 a+ G7 a8 k, W7 z- a" h7 M# |, x- p) } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( w& E6 ]- ?# z" H9 ~ swarms.buildObjects();5 f. F: V7 v# c. M* J
swarms.buildActions();" R& ^- S+ a" r) s: [3 o
swarms.activateIn(null).run();
{1 g# K# U) i( X& u( T) B' V! e+ Y }" O2 }5 M3 R) X1 D
/ U+ m+ x7 W2 G+ V
} |
|