|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ^# R# r. @2 Y5 C1 V+ Z5 s$ d! T, X% q) q) l2 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( d* G; O& H3 n. H- G1 a1 J; c/ Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: g# ~) U% |2 S3 P- g1 \. w/ }swarm.SignatureNotFoundException- d" T! J! M1 [, o1 L
at swarm.Selector.<init>(Selector.java:76)
6 v5 s+ V& l; r6 W% n6 y2 I$ ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37); C% l1 [1 Q+ q' ?1 z& n7 k' W
at ActionGroupDemo.main(ActionGroupDemo.java:67): Q% Y, v) D1 z' o0 t, D6 t
% h8 r# a% |+ b" ?: [
/ ]- W# v0 C9 K# [* [import swarm.objectbase.SwarmImpl;
$ Y* o7 R9 \( x: Rimport swarm.objectbase.Swarm;( S- N# | j" [& W% I! X6 j& P6 ^3 K
import swarm.activity.ScheduleImpl;0 ~7 Q6 ^) ?( o: e2 {
import swarm.activity.Activity;8 y1 D/ n v3 x0 {9 l; I/ O! r
import swarm.activity.ActionGroupImpl;. R. h c1 L8 w9 y, T# K
import swarm.collections.ListImpl;
6 J+ J5 R: w: c, jimport swarm.defobj.Zone; & A; c. X2 X$ l- B% H
import swarm.Globals;2 s) J& c% m- q# d# V
import swarm.Selector;
4 l+ a p" s: B: g) Q8 Q* Eimport swarm.activity.ActionGroup; + l# T: W Q& V# v- E- G. @
class Agent {
$ i, K! b# B! L3 I4 h char id;0 [4 t+ q3 q- E; r
# }" N8 Z4 K ~& Z6 K
Agent(char id) {0 ^. S) c" i0 e
this.id = id;1 a; Y1 w4 ?+ [. \/ I1 @
}( g# J0 n+ F+ Y) f% q
# q3 h* A' L% G. H public void agentStep() {) a2 K' l" q8 L; H! s0 T& `- E
System.out.println(id + ":" + Globals.env.getCurrentTime());+ ~3 O o9 S7 [8 M; x
}
5 F/ ~5 ]$ X: ^1 x$ o( \6 E+ M% k}9 g9 B. I$ Z7 d, O4 h0 v
, C! ~3 Y+ j2 v6 l/ z8 g
public class ActionGroupDemo extends SwarmImpl {! K1 q) o2 ]# K" x6 u1 Z
ScheduleImpl schedule;
( n9 g3 |# r) ]5 }$ y- H5 r ActionGroupImpl actionGroup;
' {! I( Z9 q7 j; i z ListImpl list;
7 j E7 A/ v# r9 H( f( w char Id = 'a';
! W" ]2 H G4 U$ R2 P6 @( \8 n* O$ o' a
ActionGroupDemo(Zone aZone) {
O0 u# G/ w: J& c( ]( n super(aZone);7 M, D" j% z- x& y' V
list = new ListImpl(aZone);
! t3 h% Y7 ^: o X/ _ swarmSetp();6 S* F. x( x+ D' x/ ^8 |3 h
actionGroup = new ActionGroupImpl(aZone);
& i5 |4 P& U, ]. u schedule = new ScheduleImpl(aZone);
4 ^, m' T+ U* D z7 k try {
* k& i* S$ X% `/ U6 g Selector agentSel = new Selector(Agent.class, "agentStep", false); @' N$ E5 G* }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* \' r+ Q. D# O3 W! V
) A0 b, h1 v1 K; I; q& R& T actionGroup.createActionForEach$message(list, agentSel);. Q. R4 T! ]2 X4 X- x e, t
actionGroup.createActionTo$message(this, swarmSel);& |8 L+ @0 N" Z0 X
schedule.at$createAction(0, actionGroup);
: R \4 m0 w6 p! q7 v" g; A Z schedule.at$createAction(1, actionGroup);5 V' O' i$ }" p+ ~
schedule.at$createAction(2, actionGroup);
! N/ T- r" \0 a, V2 X
) d5 B v1 t( i; G ?. s' L" E } catch (Exception e) {
2 j# \# _. i! W' d: O& j6 m6 m e.printStackTrace(System.err);3 Q9 R, L+ M4 v
//System.out.println(e);$ T' e" n4 w- e* R0 F
System.exit(1);
7 l& s3 |, _: s }' h+ E" D8 I; c. l+ p& b: A
) g8 `# {' T2 ~9 O8 J# [% N1 @
/ F) m; G6 z8 U, t! P% ^$ e! `! b }
! H4 K, c t" i, w8 ~( d+ a7 ^4 ?# p" i6 y
private void swarmSetp() {
, G* b7 z( g. |0 M. o list.addLast(new Agent(Id));1 ?! G) s( X& g! X9 t, Z/ w+ h
Id++;& R: R i( ~ G; o. `
}: h( D# M: l! y/ h' b& M4 y0 G
& [2 T# ?# F J
public Activity activateIn(Swarm context) {0 T9 {% D+ @$ ~2 h- G# a: M& U
super.activateIn(context);
$ T& t/ w, \. ?/ z4 r7 Q schedule.activateIn(this);
, d/ }6 X+ t# b7 T: B return getActivity();3 G+ ^5 ?, {/ N6 u
}* ]4 a# ], m/ Q
! n+ t3 q$ A, T
public static void main(String[] args) {0 a6 A- b& t6 H+ v: s5 G: z' R9 e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; b' i& Q) _# W. }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 S5 b5 n3 b: k swarms.buildObjects();# P! r6 z4 U5 u l+ h# O% M* \
swarms.buildActions();6 z! O( m. W: u' D# w G9 D. f
swarms.activateIn(null).run();; b+ W' `' J$ J f5 u; c
}
" d7 D2 \8 H% }1 S1 t# f m& b q# A- N5 ?8 y( J: C! T
} |
|