|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 W! }7 S' @9 k* [; p
' F# N4 E; |0 D9 G& G: z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
s. n& @1 n9 l5 x1 ` {' J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# Y3 E+ h7 w6 D0 p1 K
swarm.SignatureNotFoundException6 V- X# U. u' b
at swarm.Selector.<init>(Selector.java:76)
# V( \; r$ ~4 g b. C6 f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- N3 Q* E2 ]. ~: ]/ N at ActionGroupDemo.main(ActionGroupDemo.java:67)" V, K5 a6 u" k( H: K7 ~6 |# F
' T* `6 x' C/ @: R7 z
+ l& Q' X& b5 f/ W8 Fimport swarm.objectbase.SwarmImpl;# z% }+ b; ~ v$ V" }: y- ?! A) s8 z
import swarm.objectbase.Swarm;
! m& @1 a2 ?/ M, s& F) K/ Eimport swarm.activity.ScheduleImpl;5 b1 F% b. _3 K* a( s5 q
import swarm.activity.Activity;
( y% B8 w. A/ S* c" eimport swarm.activity.ActionGroupImpl;
4 j0 G; ^5 i; aimport swarm.collections.ListImpl;
3 M9 |* l4 e1 u! Z/ H9 Z* wimport swarm.defobj.Zone; $ w) G8 C$ p" Y. W1 p
import swarm.Globals;* d4 ]/ Y: R! d: a+ o
import swarm.Selector;8 B1 ]% E9 ~7 @/ k2 p
import swarm.activity.ActionGroup;
/ ~$ t+ k! g: a0 P& b+ Q- l1 |7 jclass Agent {
4 O% T3 S x. @& X- d9 w8 b char id;
8 _" g. X: W9 Q) F( j7 _
2 z2 R! E2 {$ C( h1 z9 z Agent(char id) {& A8 L" `' E+ j7 b9 L! @
this.id = id;/ f3 r) V$ h& M* R0 J m
}
6 ?) H g8 V* K. C4 ^6 o9 b+ I! `# y/ y$ W& ?
public void agentStep() {
! x' ^& p5 I7 o+ `, H( g System.out.println(id + ":" + Globals.env.getCurrentTime());
3 a; k7 F5 H, P. N8 @- {2 W }: ^$ A; \, E3 q, e4 D. u3 {5 [& k
}
0 G- M8 `. i4 o r" K* k* X) y" S$ H6 Y$ |" d
public class ActionGroupDemo extends SwarmImpl {
, H6 P9 I5 Z1 c% ^' T; q ScheduleImpl schedule;1 G# f, D. Q) ]* Y5 K9 n* x l
ActionGroupImpl actionGroup;
# [( B( ^- O3 A ListImpl list;7 \% }0 J, f, m6 c1 H) Q! T; A6 }
char Id = 'a';3 t6 d! E4 Z8 e7 n
! f- V$ l; m/ R1 y% _: q# A. ` ActionGroupDemo(Zone aZone) {+ `$ y' o- H ~& j7 H: F3 i
super(aZone); T* `5 V. X- [8 T4 l$ Y0 t
list = new ListImpl(aZone);: E, H3 g5 ]( k" X
swarmSetp();) x8 y8 i4 ~- D4 X: q# o5 F
actionGroup = new ActionGroupImpl(aZone);
m4 e# X1 U V: X* S$ w; X schedule = new ScheduleImpl(aZone);
# }' Q1 |. @+ N3 Y. p" C k try {
8 ?1 \# C+ D4 i; Y Selector agentSel = new Selector(Agent.class, "agentStep", false);
- R9 M$ ^6 b* a& s Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ |" \! b. U% f+ x s9 a
; y" O X3 _# ^8 M1 o H i actionGroup.createActionForEach$message(list, agentSel);
5 s! M7 f% }% U7 R: C actionGroup.createActionTo$message(this, swarmSel);
/ ~! A" n, k- I schedule.at$createAction(0, actionGroup);
9 [( Z `! G/ \( A' R$ c5 i" E p schedule.at$createAction(1, actionGroup);
! V2 r' T) O- E& I. g schedule.at$createAction(2, actionGroup);8 P4 F+ i9 J3 l# E$ `
/ |) F4 k. u1 m- H$ {+ b; N) X } catch (Exception e) {
. r: R3 k0 i. g2 \3 P' d- B e.printStackTrace(System.err);
$ u& }& v9 n/ [+ u+ m //System.out.println(e);
! s- A; k+ D/ D# s: x; v System.exit(1); h7 B! X7 i! ? N1 K
}& x2 k( K' D+ I% C
: O% R ], @1 o* s% A8 g
+ M; { v+ z1 h2 V4 _5 C }; n* u% g }' u. H/ n0 K
! I' V. z8 v K. I- M private void swarmSetp() {
$ C$ b8 s5 R* Z! i8 u list.addLast(new Agent(Id));
. v. x" X/ o5 {. q Id++; W9 [6 J7 G9 t6 R( |: m- H
}
, x9 l/ `" \) I& l2 u r$ g, n7 B9 {
public Activity activateIn(Swarm context) {
- A) j& c, e" r3 t, {+ z7 u super.activateIn(context);
# |. C% k9 v8 w; ^) U4 M( S9 K schedule.activateIn(this);' `3 I8 n- V% F, d9 X
return getActivity();/ k* s1 M3 i* q w$ L* f
}
3 o7 ?; }, d% B( s+ p, l; d7 G' G1 f# M1 I
public static void main(String[] args) {
( S9 ^3 U9 b2 T Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 n: C$ S( R; l3 l' s" a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); R7 W* D8 V0 _
swarms.buildObjects();
4 l4 Q$ w% a( Y+ t9 b! K2 J swarms.buildActions();
1 L3 N0 V* B1 _2 r+ b! S1 `) r3 F' v swarms.activateIn(null).run();% }% R9 n* f/ V9 P5 h7 [
}9 `% w) y4 \+ w" @4 Y9 u
: Y9 X! ^( O- I3 A, o! J1 V( {} |
|