|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 W# x1 a- G% A4 d4 r
* K/ W' l( H; `; e* r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 P- S0 I7 u+ u1 B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ b. E$ j5 Q, G- H8 {swarm.SignatureNotFoundException
( } x& M0 p9 f- t at swarm.Selector.<init>(Selector.java:76)& u' `- O; D& A% l6 S! }; u8 [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' P. ^$ W0 Y/ w- o8 z
at ActionGroupDemo.main(ActionGroupDemo.java:67); A6 ]& t* x9 ?, x# C
j# \ E; y5 r1 l7 o- ^
1 P6 b) ` r1 x! k3 F( g
import swarm.objectbase.SwarmImpl;
' a. F6 w& c' [import swarm.objectbase.Swarm;
" L- @/ i$ T2 ^import swarm.activity.ScheduleImpl;
$ k2 @8 w; @5 D, i' Oimport swarm.activity.Activity;- f+ t! D) O7 o% |; k1 Z5 }' t
import swarm.activity.ActionGroupImpl;
) K( E* |& B; F3 Z; dimport swarm.collections.ListImpl;. W; l) u: j3 M3 B; I
import swarm.defobj.Zone; $ Z; r- v* P6 ?/ v5 Y. G
import swarm.Globals;7 u8 u0 n0 N4 o, C
import swarm.Selector;
: C# y" j8 E9 j1 Dimport swarm.activity.ActionGroup; & x. c' q' l8 S+ f' K9 p0 n
class Agent {
) P) E$ O( U% g- D char id;
# j/ h5 P4 X5 Z: K, e; p
- I o! _6 ?! y7 M Agent(char id) {
7 h v& u" l6 M1 |7 Q, j$ v this.id = id;' |0 z# l) S; C, n5 U; I7 w
}, ]* B; c) ~6 W$ A
; ~2 k# d' P- X S
public void agentStep() {
; E$ ~* x& p! f$ ~ System.out.println(id + ":" + Globals.env.getCurrentTime());# l+ ?) ~3 b& I: q- x
}7 g" @* a& A$ {1 `6 P* g: c
}
z1 _" a2 Z0 q& ~# ?" u6 l$ l9 [
public class ActionGroupDemo extends SwarmImpl {
/ P& X4 ?! l6 \9 c, E ScheduleImpl schedule;
* ?8 a1 ]6 ~& |1 G2 W& K ActionGroupImpl actionGroup;; f, r. w+ l; d
ListImpl list;
/ _7 P' K4 W5 R! o& H2 {9 ^ char Id = 'a';
7 v! S6 n6 b3 Q5 q% b8 s: Y6 c' q
: G/ P7 ]! A% r5 M3 H: N6 t8 w ActionGroupDemo(Zone aZone) {
9 h! T0 [ J1 c1 ^: _6 a' q super(aZone);
/ b( W* D* f5 t+ R# w: \ list = new ListImpl(aZone);
* ~5 |3 o- ~! B4 `* Y swarmSetp();" b, E# [/ S+ s6 n' P6 V* J7 Q$ E, z
actionGroup = new ActionGroupImpl(aZone);
2 X/ K$ h2 A& G. q+ u( A1 L N schedule = new ScheduleImpl(aZone);
2 u( L; M3 s! u6 Y/ j try {
. o: Z) r5 _' p2 t- t Selector agentSel = new Selector(Agent.class, "agentStep", false);) i0 C- q/ S& Z( w w& i- F0 H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 B) n9 l( ~# U% O# N6 }2 D
& S, S6 G4 O. p actionGroup.createActionForEach$message(list, agentSel);
! t S% \1 Y4 } n/ E4 K# T actionGroup.createActionTo$message(this, swarmSel);, s7 R3 @) F$ x6 L# F
schedule.at$createAction(0, actionGroup);' l: C$ ~, A! a. a5 t$ Q
schedule.at$createAction(1, actionGroup);
3 H4 M1 Z5 p4 \4 l' z5 I. v+ c schedule.at$createAction(2, actionGroup);( J7 a/ O1 E3 }- E- S9 T' Z( {
. Q$ H$ A- {- b4 m% G" b. k } catch (Exception e) {8 g* [. x- \/ h
e.printStackTrace(System.err);
% j- U. W; g$ P8 Y6 W //System.out.println(e);$ V) _7 ^! t2 o# [$ F
System.exit(1);
: i8 p2 ^; D0 N# S( N4 F9 q }
& l9 A- b% E3 ^* j! d Q; w4 Q* j4 N' F# o" ~9 [
$ p# O, N! b1 |; o3 e0 j0 R% D }
, D9 @1 H9 g" \1 j9 u# c" o+ |/ y T+ W7 O4 X# [. T* {# H2 ?
private void swarmSetp() {
' j8 t2 j- t/ T% c+ X list.addLast(new Agent(Id));
: q) S( w6 K6 U8 O/ ` Id++;# l" V+ w- f1 a! @
}
' C) m/ _$ d4 \3 I6 s9 s) z5 r/ _6 L& }/ f
public Activity activateIn(Swarm context) {
8 y( \& ]# w* S+ `9 P super.activateIn(context);' \1 R% b8 h* O9 K( b6 B& [
schedule.activateIn(this);& |* o: M/ s- W h& a- P& \, o( ]
return getActivity();; U1 G* D$ K9 l# t& ~
}
- L( e( N$ s/ ]2 T& Y- v) q1 z. {9 m' d" e: q. [* C
public static void main(String[] args) {
& v1 r! J% Q8 ?, J2 ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 F( R; t! H ?! L Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ N; f% ~5 ]5 g4 x" p3 c/ P swarms.buildObjects();& k$ [6 T0 |$ ^" E2 ^: x( P
swarms.buildActions();7 a9 K3 z6 D( N% d. P3 o
swarms.activateIn(null).run();
/ k5 I. m5 h8 T( ^$ z# O% J }
: z$ @$ S z2 |+ `2 s" B7 g+ _* T" Q& C, o
} |
|