|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * `( ]8 C' o8 f( v5 o. b4 [& O p
, X7 h/ u. x9 H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& v: ` j( D' Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) E7 _$ b) _* ^
swarm.SignatureNotFoundException( M' C. R/ u9 K5 e$ R
at swarm.Selector.<init>(Selector.java:76)
& F: j" U4 M6 Q; Y7 N: i# E3 Z0 r' O at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 v5 [ S5 N2 I2 n$ ]$ |' v }. j at ActionGroupDemo.main(ActionGroupDemo.java:67)
) Z! y) L5 x: B- t& V2 j0 U/ I1 T% R: D" O$ ?& ?
) {2 `' h, \: c' k: J
import swarm.objectbase.SwarmImpl;
$ S5 i& a5 G; fimport swarm.objectbase.Swarm;
( K: _( s, p- }import swarm.activity.ScheduleImpl;
$ ?1 T9 v) q+ i, C2 y9 v* ~8 o2 ~import swarm.activity.Activity;; B% `, ]6 R! E# d' A
import swarm.activity.ActionGroupImpl;! K% {3 {9 \2 w( H& x0 D
import swarm.collections.ListImpl;1 I( ?" z4 C$ }; l3 `. R3 g6 Q
import swarm.defobj.Zone; 7 N- Y0 A& e( W+ B& z5 Q* n
import swarm.Globals;3 M/ K2 X) T2 x8 \; W
import swarm.Selector;0 H6 L' ~7 K" {
import swarm.activity.ActionGroup;
# r8 O0 {* U3 t" M* @, I, M" uclass Agent {3 { \0 M1 l' [& B F8 R, s
char id;" o* c2 R! L d# }5 F; `
( S) B" B6 K0 N5 ~1 X( t$ c
Agent(char id) {
. k1 M' s6 u5 b# r, W/ _ this.id = id;+ s$ g+ Q# }( G6 p. k3 Y7 V
}/ L6 U9 [8 y5 g% q* L
. ~7 ^. O/ J; T6 V8 q7 _8 C
public void agentStep() {
& |) }( z. x: `& E% M System.out.println(id + ":" + Globals.env.getCurrentTime());
( ?8 K ~8 `8 S }1 @, j' x8 ]( f$ K; t
}3 U" P$ O" u4 P0 i [' {$ P
]. d& W3 |8 X
public class ActionGroupDemo extends SwarmImpl {
1 @" _. v" `5 h7 m6 g ScheduleImpl schedule;
# y3 B. M6 }9 J* K/ J, V& b+ Z ActionGroupImpl actionGroup;( ~. Q Q' D& N D% C
ListImpl list;: d5 E& y. c; S% r6 t3 p
char Id = 'a';
/ a Y2 B: D O( d4 W8 h# `4 g+ U7 I/ I
ActionGroupDemo(Zone aZone) {, G$ ]( `7 P8 d* e( Z
super(aZone);- M5 c" A8 M ^0 ?$ d$ j/ u
list = new ListImpl(aZone);: e3 f- t/ V( J0 R% ?
swarmSetp();
) i8 O/ f& [+ N. q$ D' x& D/ h& ~ actionGroup = new ActionGroupImpl(aZone);
, g( m+ {( p$ s* ]! \8 K5 s9 ] schedule = new ScheduleImpl(aZone);! _/ Q' p, e; X! w, H/ b) p
try {
4 a8 D$ V; V( e ]* t" Y4 ` Selector agentSel = new Selector(Agent.class, "agentStep", false);# x& r' m# ^' ?4 @, t& t
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 I u2 o- F9 o9 P
! v4 r m! C3 x actionGroup.createActionForEach$message(list, agentSel);
+ F. d {7 G2 D5 s! n, { actionGroup.createActionTo$message(this, swarmSel);
8 W4 J, B8 T% T# ]4 d schedule.at$createAction(0, actionGroup);+ @2 f4 m! h% W6 d! j9 j6 a5 y
schedule.at$createAction(1, actionGroup);/ {9 q# `7 s7 W' ^# z0 A: h
schedule.at$createAction(2, actionGroup);! _. V5 o! Q4 F2 `
! K5 e, T: Q! y9 f. z; h
} catch (Exception e) {) Y8 ]( H9 e0 @5 I6 ^
e.printStackTrace(System.err);: H$ D+ [) D+ ?" U3 x1 o
//System.out.println(e);
) I5 `/ l! v7 \9 D1 D System.exit(1);, V* Z' d! K5 x$ W( O
}
l5 F+ z7 [9 W+ T
$ p0 Z5 ?9 {3 [ N7 C5 G7 l! q1 i% K1 c6 Y
}# y k* ?6 _3 e5 _7 a
1 ]6 X8 B9 r' \, ]. o( J private void swarmSetp() {6 ]; M0 s9 G5 q
list.addLast(new Agent(Id));
" U. g6 x! L5 m% P( g& \) F Id++;
! J, f0 D# S; C8 B, N$ [- K5 L }
9 _; y$ ?$ u* O& k F
! I" @9 i( m8 d public Activity activateIn(Swarm context) {
9 H4 W' E# b3 z9 x1 p super.activateIn(context);
4 F( M* A6 p, j3 N, B4 d schedule.activateIn(this);* ?+ Z: Y d( j5 G
return getActivity();
. T: }4 V7 {' k5 o: i* F6 I }
8 Y. H4 z. B' M1 S/ C4 T
0 t9 w* ~, v/ Y4 |* u' ?: { public static void main(String[] args) {
- h5 z1 q' _6 {4 n( S0 Y- Q% x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 c M. d) w3 X9 D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, F* O( E; Q7 x5 K swarms.buildObjects();) X, l; C$ d7 ?1 m6 h- Q
swarms.buildActions();
) t' P. Y' a: G* W& L- h swarms.activateIn(null).run();
$ o8 P0 L4 J% l2 u- s0 { }
6 A2 U. R S7 P/ q2 W
) {* q0 ~3 ^; z8 i- y/ M- s} |
|