|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * E9 W7 J# Y; H. m8 v1 c0 r. Y i# Q/ Q
7 @4 U& a1 Z1 k6 P: h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, J) k7 u5 u3 Y, L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 E4 O8 |3 h: H# s% Tswarm.SignatureNotFoundException
6 }- R7 z" G- R at swarm.Selector.<init>(Selector.java:76)
1 B+ h- Y: ]( { at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& L! c" r1 W, W; X$ U at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 N3 \! u6 y% H
2 ^( ~" x# [- H$ G. Y$ U
; W2 O2 [! C) {import swarm.objectbase.SwarmImpl;0 r2 U) J8 Q# |+ ~6 l& u
import swarm.objectbase.Swarm;: F5 |8 \8 Z0 y4 g
import swarm.activity.ScheduleImpl;
' Q2 c/ @ P- _0 h8 |" rimport swarm.activity.Activity;
' F. T4 R1 M& f* P: I( i! m1 ]" q6 ^import swarm.activity.ActionGroupImpl;: \! _/ B5 p: E4 w( F) x4 d ^
import swarm.collections.ListImpl;
7 S7 s' y' n0 M I& himport swarm.defobj.Zone; 1 Y8 c5 C, E( Z8 r2 n
import swarm.Globals;8 m' B3 v v& \3 j' A/ D5 m0 K
import swarm.Selector;
; M$ t2 R$ ~( Q' Zimport swarm.activity.ActionGroup;
9 ^3 u, K$ S# o# qclass Agent {3 _0 k4 t+ o9 {; A6 p( h3 d) s
char id;+ N; u% O- i, o2 G7 h' {- b8 r
8 s# t# k, d. B2 X" h
Agent(char id) {
3 r4 @& U* D. G. s: |! @ this.id = id;
* J |; m$ ~; R/ f) f" x9 p g8 O } t0 Q# e, n+ l" ~2 a' Z
0 D) X' a4 `3 n V( J/ p8 W
public void agentStep() {
1 ]/ q, r7 [: I5 b0 M3 U/ |. v System.out.println(id + ":" + Globals.env.getCurrentTime());; Q f; ?& k& s* e
}
* k' p( ^. u# j; i0 [}$ F$ A0 Q! A# q8 \
8 J4 f4 J0 }/ _ X+ J- qpublic class ActionGroupDemo extends SwarmImpl {4 W: F- r6 p9 A/ U E
ScheduleImpl schedule;5 y. M% }8 k- G1 r! h5 e% |
ActionGroupImpl actionGroup;
2 S9 v; {6 p6 {# J. X ListImpl list;
; A5 T- r7 f- F- s7 Y$ {0 B char Id = 'a';
( X0 ^) \ [ Y5 W7 ~
& j; D. ~% N( U- s ActionGroupDemo(Zone aZone) {
m- f4 f" f4 V super(aZone);
" d. K/ z! C7 p2 y3 h2 E list = new ListImpl(aZone);
3 f1 {( R& ~3 g( _% R swarmSetp();9 A2 B$ B* H' @: m& b
actionGroup = new ActionGroupImpl(aZone);& b% @" ?+ _, E% s
schedule = new ScheduleImpl(aZone);
7 k0 N/ R; f* H' ^6 s, }5 C try {! j5 J2 i" r0 u; q# y! i! l
Selector agentSel = new Selector(Agent.class, "agentStep", false);/ z$ K$ U5 H/ s9 M: Z$ z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ x, d; j- a H( v. n$ M
# K- P- o4 M" }# f9 y. A7 l* G
actionGroup.createActionForEach$message(list, agentSel);
' u# u: s- Y3 _# _ actionGroup.createActionTo$message(this, swarmSel);- p" ] n/ ]+ J4 }
schedule.at$createAction(0, actionGroup);9 N, W5 U# A4 N( R7 W# L: P
schedule.at$createAction(1, actionGroup);$ W; `+ l# h4 |. b
schedule.at$createAction(2, actionGroup);& j7 Y1 O1 @9 l7 n& U
* [! V3 m4 R; c! x
} catch (Exception e) {
! {# o1 b' I4 `' w2 [ e.printStackTrace(System.err);
0 I- {& F! N# I //System.out.println(e);
7 ^2 m J- J# j. @7 ?4 U! g9 b System.exit(1);
# x9 ^6 H1 w/ H }4 X/ R; U3 r, e# q) b+ |. L
) [4 c! Z8 ]: b/ ]% @
/ s0 G# R5 \5 G! `, K: L
}8 Q% W, |% f+ g4 O% l
2 F+ \2 w% {, m$ f- w
private void swarmSetp() {3 z( Q1 \; l4 U; R6 d& `
list.addLast(new Agent(Id));
$ m S$ W& o9 a; d6 u8 M: {! g Id++;' \, ~/ ~) L4 A" |- S9 ?- X) a
}& g; w- z- \& |: k9 R; D
7 M2 v4 t$ ~$ | u( G$ ^9 \ public Activity activateIn(Swarm context) {* C0 f) [- s: d. H; d1 _5 B5 x
super.activateIn(context);
* `1 _. |5 Y& f9 I; s schedule.activateIn(this);
* |2 [; l. S1 {# N return getActivity();0 E7 a$ j5 A1 i. b, A% H1 Y
}1 j" r, d) C& B: v% Z1 |
/ n6 J. T2 C! l0 A' Z2 ^ public static void main(String[] args) {4 G$ M" y) E, f* C0 Z0 ~1 [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# F( z) P$ t% c$ O1 R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- E* z8 {) L: J2 E4 q0 R
swarms.buildObjects();5 ?, F# { g' [, O4 [3 O2 Z0 u
swarms.buildActions();& S) l7 k; [- u) d
swarms.activateIn(null).run();" m) T5 B, P# a R7 ^2 |0 R
}
6 e; e. Q! s& ^9 ~7 l3 e' b2 C) d a$ Y# G% F
} |
|