|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( [" O8 {+ |# D; O
; z6 s+ S# N% k" l, s6 D2 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 P8 t3 d5 P4 |+ ]- w" y9 d; f, x/ e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* T: v' Z/ {: t# b c; {, Xswarm.SignatureNotFoundException: I/ V/ q! V7 K
at swarm.Selector.<init>(Selector.java:76)- ?) C' H5 l; n9 ?" @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: J* ^# E/ B0 ~5 f+ B at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 q& U( h0 K/ f. c _. q" V
3 H, u, P9 \6 Z
7 ^' d# K! k9 r; l: Z9 ^! X7 limport swarm.objectbase.SwarmImpl;
6 v6 \' c4 f5 x' s# c; F% Q! Oimport swarm.objectbase.Swarm;
: a- H8 y. { h4 n. oimport swarm.activity.ScheduleImpl;
, S9 R/ A! n5 W/ ^* \' M+ b) u! zimport swarm.activity.Activity;
9 R$ h$ b2 J- c, i* dimport swarm.activity.ActionGroupImpl;
: A) s) T, X' s( {; ximport swarm.collections.ListImpl;: l" ]9 m5 g" M5 K9 k6 m& z7 F3 {
import swarm.defobj.Zone;
+ l% W7 K9 E* Z' b$ iimport swarm.Globals;$ y' N' a" v9 k$ d" a% O! |
import swarm.Selector;& a* \8 Y, z% A/ ]2 s' P4 F8 n0 [
import swarm.activity.ActionGroup; ) C' _2 v9 x* K! t: N
class Agent {" w5 t& b. Y5 @* |: x. B
char id;
4 p9 a) m- a S1 {: Y9 ~* @
1 `( ~& p) T0 m) O" W/ r- H; _ Agent(char id) {
. H+ V- }; V r6 H& D4 \ this.id = id;
7 p! E; j& W7 d! q4 I8 K. d8 L }; k% j3 A; y" [/ W' I
" n9 w3 E$ l9 A
public void agentStep() {( f; o- u, _3 V ]
System.out.println(id + ":" + Globals.env.getCurrentTime());, q. D# C) \3 q6 d
}
* c2 L: {6 r1 B9 \}! M4 m3 T2 B7 f) Q
# ^4 j7 n" |/ x* l1 W5 I6 @6 ?% `' k; gpublic class ActionGroupDemo extends SwarmImpl {7 t2 L4 R9 x6 ?2 m/ F" c" P
ScheduleImpl schedule;: y. X, w" `- ]) X+ d3 V1 F, i
ActionGroupImpl actionGroup;, E! h) |( L7 C1 y: b( q
ListImpl list;7 f4 F: R, z+ U/ U2 G
char Id = 'a';
6 R6 s7 W- o) W; n: w. j
- h9 }& o7 @- j( w v ActionGroupDemo(Zone aZone) {
& {$ z1 i! |7 ]% @9 Y super(aZone);; x; _0 y3 c* ]1 [
list = new ListImpl(aZone);
( I" A+ `" n( a: ^, c! g swarmSetp();& O0 q M. f0 x( D
actionGroup = new ActionGroupImpl(aZone);
# o& v1 \ u3 S+ S) p: Y) C1 a( @ schedule = new ScheduleImpl(aZone);
1 H* x6 E: u8 l6 N try {! U8 u$ u) A7 e0 t
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 W" D. R+ ?: s+ O2 o3 ^4 Y# g) ?
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: M) G, h- a' w/ z9 n2 c# l. P# n & R f2 M/ ~$ D: [( E
actionGroup.createActionForEach$message(list, agentSel);
8 x0 w( Q V w1 S1 F' b w; @ actionGroup.createActionTo$message(this, swarmSel);
4 P8 t0 ~% t2 J0 |; r schedule.at$createAction(0, actionGroup);
' i7 K+ N/ B% w) V& N schedule.at$createAction(1, actionGroup);
1 D, p. i9 f* [* K( V" f- D# p* j schedule.at$createAction(2, actionGroup);+ J a1 a) F L9 M" V7 L: _$ ]
8 P% H0 w, G P, P% K9 B
} catch (Exception e) {& |; X r, n5 K) v' t
e.printStackTrace(System.err);) p% c3 [2 j! U/ g6 N
//System.out.println(e);8 [8 D6 M7 c3 Q6 t& R, n
System.exit(1);& H6 u- Q2 x; W8 C+ U" N% N
}( C# Z- Y- M+ |. C
. ]% @' W" |' [
" I' M% D+ D! X2 h" ]0 ] } _4 E9 l+ v4 a5 ^4 o
% w$ m. V& a; e0 Z
private void swarmSetp() {
$ B9 s1 s, M3 l. ~" \- G t* ` list.addLast(new Agent(Id));; B9 r, J" E2 N: M
Id++;9 l t2 P6 U' z4 f
}1 _3 |' f/ M9 t, M
% f: k3 _$ g1 _- Q$ A' M
public Activity activateIn(Swarm context) {
9 a, w* n$ L1 h super.activateIn(context);+ W" C" |; b) T& u! ~3 p* c |2 `
schedule.activateIn(this);
5 X J, N/ H4 a, Q. d; y return getActivity();* S0 C) h6 h* M. N- k
}2 q& Z" d# ]# t9 R2 L6 N
$ q1 s6 t9 o/ Y6 T" l
public static void main(String[] args) {, T; U6 R1 ^7 Y# \0 j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 s7 e3 W* v5 c* p4 g Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 E: v. x. y& N4 s# f( q+ [/ |4 j swarms.buildObjects();
# T% h! [. k6 W. R l6 ?! C. I swarms.buildActions();
5 j9 c% P& p* b% b8 d swarms.activateIn(null).run();
9 O% h2 p/ p: j) q6 R9 P }
( |+ v: \2 R, Y3 z6 B v; k
) q k7 S, f( }9 ?" x1 I$ E1 _} |
|