|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 {: W- u3 @. z+ w) t
: E- Y! v% _! m6 o) p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 q" t# k' r, Z- Q4 I, S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 c/ ^& h; U$ n. {; T8 vswarm.SignatureNotFoundException
0 B# ~1 g9 k+ n$ h at swarm.Selector.<init>(Selector.java:76)8 A8 @/ P6 U ~9 E) L3 n; l
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* ?1 h2 |5 K0 |3 h at ActionGroupDemo.main(ActionGroupDemo.java:67)
' X) q" D; p# H, Z L% c: n" H% \0 ^1 Q2 K1 H% T X
4 C% N. k; B- i! R2 ?- Ximport swarm.objectbase.SwarmImpl;
( O/ O$ U/ O* E4 |$ y3 Iimport swarm.objectbase.Swarm;+ T- L5 W6 n( {: I8 C
import swarm.activity.ScheduleImpl;! b) b* \- d" J- o3 _
import swarm.activity.Activity;) v; O% s% V4 v& ]/ ~8 k2 w
import swarm.activity.ActionGroupImpl;- ^. e+ i W8 H. [' v
import swarm.collections.ListImpl;; X X3 ?' \, b* K( l v6 y
import swarm.defobj.Zone;
. z. c; w8 i; G& a- u% himport swarm.Globals;0 h; s* N$ |* b& ~( H
import swarm.Selector;
{1 V$ M; S8 B# m3 [$ @import swarm.activity.ActionGroup; / R# ^ x0 r# _" ?% k
class Agent {2 j8 E: c: t, u* e9 Y; a% K: u0 ^
char id;8 K# R# o5 g2 A* T/ [4 B" _
$ s, E& e4 r2 Y! |( Z: h Agent(char id) {
) S0 }; e8 \; f this.id = id;
8 Q. f* Y! w3 z) ], U }
' m8 _; [$ F& J1 |* O* N
7 W7 @# v8 A9 o. k7 y public void agentStep() {$ S$ Y. b% @! X% F
System.out.println(id + ":" + Globals.env.getCurrentTime());3 i+ g+ j4 q& d5 } _
}2 l2 I) v7 `3 z
}
% ?4 x5 `6 R* f( Z% b% ~' u! L' q
0 T' ?4 @" ?! z2 p- r4 f/ p# w* Hpublic class ActionGroupDemo extends SwarmImpl {* t3 A. M7 A, t0 J0 R) Q9 O. f( W
ScheduleImpl schedule;
* v1 b7 S" d3 ^8 L5 T/ d8 H ActionGroupImpl actionGroup;
F9 e5 W0 g8 m3 R8 X ListImpl list;/ z; J3 j7 \3 s# P+ w9 ^# ?' p
char Id = 'a';
# p. g) |8 Q# T' G$ _& D. M a" J" c) o4 L% K
ActionGroupDemo(Zone aZone) {" T2 e. {, d* f1 Q2 k
super(aZone);0 `9 M* R0 l8 M) `7 i: H
list = new ListImpl(aZone);
; Z5 c& `& a/ Q1 K9 u swarmSetp();
2 a7 I1 b+ F/ H, q% F% o) d actionGroup = new ActionGroupImpl(aZone); X7 Z7 N! X* j: H# ~
schedule = new ScheduleImpl(aZone);4 _5 ?3 [8 ?' Z+ `7 a$ q8 o
try {; ^, a/ h+ }9 u: A" j7 M, G/ y
Selector agentSel = new Selector(Agent.class, "agentStep", false);! I) O4 w5 x+ \# y6 I7 i
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 K+ G$ g4 q1 B# j$ a8 D# Q1 d! U
$ Z9 o3 t# y: C! P, K) E$ j
actionGroup.createActionForEach$message(list, agentSel);
0 {* b( V; n$ S6 a3 q actionGroup.createActionTo$message(this, swarmSel);0 Z% V2 L% c3 V- ?! L
schedule.at$createAction(0, actionGroup);4 U1 B; u/ A$ y' a F% i; l
schedule.at$createAction(1, actionGroup);
4 b" A8 V1 n+ [ Q& h schedule.at$createAction(2, actionGroup); D* g ?3 [& p. e
! Z- y# r8 R. {; K) P; x: s } catch (Exception e) {1 u, p1 Z" A- Z0 j0 j+ w
e.printStackTrace(System.err);2 z/ D1 S! a7 C/ J7 T d
//System.out.println(e);
- h6 I2 K# g$ V9 p) W System.exit(1);
6 H6 I% T; w F& a6 Q! Z }/ q) _8 f$ G' e. |
; }9 T2 G0 ^6 Z. N/ E# [
0 R- j, S' s* h- \7 R9 L }& a% L4 {; i" A% |, ?
3 e: H# a/ w- h& A8 c3 a private void swarmSetp() {9 o; y: K7 O; o& c- y- P
list.addLast(new Agent(Id));' ~ I$ Z6 F3 C+ V: ^ J% e
Id++;
m1 U' A6 f5 j. Y! Y& ?7 ~& C {2 B }5 U1 |4 e U8 D$ _7 i8 L' }4 W) \) ^
, h1 Z- `& T" k. U2 [" E, C" k* ?
public Activity activateIn(Swarm context) {2 P X# n- X& X% f+ D: z" }7 _
super.activateIn(context);
+ ^% j0 l' q3 S. ], y9 ], D schedule.activateIn(this);
% a# I( h/ e5 d/ y% {; m8 { return getActivity();1 N7 O, _: V" c! q$ X: b5 r
}
: T8 ?" y. Q0 {0 K( y' P7 Q/ l, l! U( k7 a8 H# T/ ~- q. y
public static void main(String[] args) {
; d0 R& d( H/ S9 R3 U/ A6 P7 | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ y0 f+ I' Z. M5 ]) ]
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 G6 r: s! O* d. k. P$ K swarms.buildObjects();5 l+ ^7 @8 d# \6 U4 m
swarms.buildActions();
/ q7 ^7 Y- Q' Q; ?! j1 x swarms.activateIn(null).run();
8 h# ?- J. b4 b" }( n }
& M) C0 D, H7 b( B6 W6 h
5 e! u) `7 P% j7 E6 j/ z} |
|