|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
l0 F. z; q1 S. K# a: s; ^2 F3 d6 w+ j* I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ Y3 h. \% |- U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 c, }3 g5 S) J
swarm.SignatureNotFoundException
: u/ K2 m4 \ m/ o) h& n# x at swarm.Selector.<init>(Selector.java:76)( o& k% }, k6 F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& M' g4 j) t! p4 k2 p0 B
at ActionGroupDemo.main(ActionGroupDemo.java:67); l7 T5 A, V6 J) X2 S6 r2 J
7 T) k& O7 [% Y# T: O1 r
3 i! T( P) _7 W& H" I9 [2 |4 Y! l- i z
import swarm.objectbase.SwarmImpl;& q z9 \& o7 B7 p, e
import swarm.objectbase.Swarm;
+ _1 N6 M0 g8 ~/ o# F7 o9 {# zimport swarm.activity.ScheduleImpl;
- A/ Z, W! ^% S! |* Yimport swarm.activity.Activity;
+ s+ g! N4 i. Wimport swarm.activity.ActionGroupImpl;& p- `2 c9 _ {# S% w
import swarm.collections.ListImpl;9 G; [! I9 k* Q' C; G
import swarm.defobj.Zone; 4 m1 D# ]) F) s" E! q: b9 x2 U0 _
import swarm.Globals;
- a" _' t2 S& I$ }import swarm.Selector;" j+ m9 r7 `, k' T$ d
import swarm.activity.ActionGroup; 0 p5 Z2 G* Z; \9 X# v* j* t
class Agent {
* ~7 t+ K9 f% ~4 O2 ] char id;: F) ?% X! c8 e v0 p, o
# c0 r2 b" V1 s" P) ], m2 l6 t
Agent(char id) {
8 O# H9 j9 y) b; Z1 f this.id = id;
7 f1 W/ |9 [. w( _! V }7 s, a7 N: v, U- I4 j
+ R2 E' M% S: \- |" H0 @ public void agentStep() {- G$ Y+ w; r, f
System.out.println(id + ":" + Globals.env.getCurrentTime());9 O6 |; P% y5 }$ s( J* f! M
}1 H5 N I; j' w( M- {: I
}
; h$ f) k/ ~# _: \# C6 ~- Q6 P. j& b1 b, t" L: O; l
public class ActionGroupDemo extends SwarmImpl {3 {+ [9 V" ^/ p: L8 \' y a
ScheduleImpl schedule;
; ?, o% }/ O+ k4 |2 }- M ActionGroupImpl actionGroup;
# C1 O( w/ t# G! G! k$ i! H ListImpl list;
# Z. A/ ^( V c5 f char Id = 'a';1 a5 E! h, `7 M7 J) ]: p+ k& v7 G
/ S, r# {% v% t% L ActionGroupDemo(Zone aZone) {
) [" x+ [; n# s- L$ l6 L super(aZone);' f# O* z9 X& g" C1 z
list = new ListImpl(aZone);
4 O" {. C/ |! w |5 {! l4 j3 [0 c swarmSetp();/ C& Q" h( `$ Z& f/ _: O' F% n" X
actionGroup = new ActionGroupImpl(aZone);& |) y) O0 C* O( z" \0 V0 j% |% J
schedule = new ScheduleImpl(aZone);. Q3 t X6 B5 {7 B( {
try {& ~ l% ?4 N1 ~; F7 b% L j
Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 k% B. p& \! p2 H$ ]7 l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% o2 K) O$ Z0 d4 w# S' l1 y* N6 x
( n0 t' p6 C) {: H! a" z: H actionGroup.createActionForEach$message(list, agentSel);
; z2 W/ d0 N1 B" h3 M9 D actionGroup.createActionTo$message(this, swarmSel);
( A) ^' z, {5 H) v! a schedule.at$createAction(0, actionGroup);) g. \& r2 q* ]9 h9 l0 m
schedule.at$createAction(1, actionGroup);! Z0 l+ a$ Z! [$ \/ J0 X2 ~
schedule.at$createAction(2, actionGroup);& K ^3 z3 [, i
9 Y$ L. L' n( e% K) ~) G
} catch (Exception e) {
5 \7 p- l! ~' m8 G" C0 E$ z e.printStackTrace(System.err);1 ~+ q# J+ r# j
//System.out.println(e);, [ H# w. q* ?! O5 u
System.exit(1);. A* K7 y: I1 r6 k; K
}: l0 y4 ^1 B& {5 I3 k( Q
$ r& t& c5 n5 ]" X9 N3 `) W
- s, s' q! W) N
}6 F# _& \7 }; I
+ ^4 s# u$ W' s2 z' a. q$ G5 I
private void swarmSetp() {
* H, Y$ `' n. Z0 ?* } list.addLast(new Agent(Id));: z+ u0 S. z8 m7 [. {* r( ^
Id++;; |) ~* x& u- r3 a
}
5 A- ?, @+ O, y" B$ |; R/ H: O( s
4 L% C! w% o0 h. d public Activity activateIn(Swarm context) {" r' Z* m+ g8 q
super.activateIn(context);1 ?5 {% E. G7 P
schedule.activateIn(this);
' O: ]1 |5 B2 Y$ ]; T return getActivity();
; h, ^# @& X0 ]& p }
a% K% a' ^3 L+ q3 X& f- l" }8 U& }) U1 Z
public static void main(String[] args) {9 H- V. `; Z( W- F4 c' X
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ Q* R! a1 A: B9 o- C: p
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# R# Q* G2 |+ K6 O1 D" n! f7 ]
swarms.buildObjects();
" L7 `' a3 t* h7 i9 w) P5 w% a/ m swarms.buildActions();
' @5 _: ?, g. k0 x* a- x swarms.activateIn(null).run();6 X6 K0 E, e p" a: S6 Z2 ?
}
w' e5 ]# d! Z# k
9 }* L0 d) P# w e" ~} |
|