|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 m. r# C3 t2 p+ ?, B
# Z+ T& g/ A: w f$ d( Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ }2 h9 g( S. [. Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' m9 B% i. l$ T8 `9 C
swarm.SignatureNotFoundException. J" n8 e2 J; Q
at swarm.Selector.<init>(Selector.java:76)' ?: `& x3 i+ c' k/ X
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! y- ]* E- {$ C- v9 \5 M
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% D- W; E+ p) E7 {% b2 v: B! u0 S" g7 k4 j- E4 x
' G5 S& u5 `5 |9 Bimport swarm.objectbase.SwarmImpl;
* L9 ]& G- Z7 f) T3 L% kimport swarm.objectbase.Swarm;
5 A7 ?7 ^3 a2 i" e& z" d: ximport swarm.activity.ScheduleImpl;+ F" D$ z+ J& A0 F/ T
import swarm.activity.Activity;
8 J! t; q' r, ~5 }* Simport swarm.activity.ActionGroupImpl;7 L' o/ J0 ~) F C; I3 N
import swarm.collections.ListImpl;$ s. x6 o" V, e D t/ {* Y
import swarm.defobj.Zone; 3 a! G" i. X8 Q6 e' ` s
import swarm.Globals;! x( g. `& Y& [4 ~5 S
import swarm.Selector;5 x, v( d1 B' p8 b
import swarm.activity.ActionGroup;
7 \+ A7 I9 f* }2 Qclass Agent {5 l2 M7 T) G% D" E% {9 b
char id;
: W3 ]! |: A; D& J @
9 N; ]- U) J/ ]; Z Agent(char id) {
- L/ \# q( o5 s6 y$ `; t8 @ this.id = id;0 u- K6 G- p& n' A2 [
}+ L5 s% i0 L z0 D4 X- b- l4 E
; v6 Z% j4 U5 ?! N3 P" g" ]
public void agentStep() {
% [: [, _& n; `3 y System.out.println(id + ":" + Globals.env.getCurrentTime());
7 o. H& X* ~# O B4 m/ g }
% }4 w" M' K! G3 Z}
( h* m [! s$ I7 O T. S2 `: D- y' x9 }: e# z
public class ActionGroupDemo extends SwarmImpl {
7 w: Y# T2 P% N ScheduleImpl schedule;
8 L; @* s- I( h2 _5 A: ^% z* N$ J2 m ActionGroupImpl actionGroup;
+ B" q% a% y: h# x6 b) Z2 i5 r ListImpl list;
0 e# V! F+ s1 j char Id = 'a';8 D& Q$ b: w& n; j5 v
/ _/ r- V1 i- L+ u3 P ActionGroupDemo(Zone aZone) {$ x/ p( M6 D+ |4 k! p7 ^% E! t$ w# j
super(aZone);
9 k S, Z4 |2 w- @ list = new ListImpl(aZone);
" L+ G7 ~) v- g2 [! h swarmSetp();
! b( x2 c+ [& f6 r& p! Q actionGroup = new ActionGroupImpl(aZone);
: ]5 |; r8 z5 t6 n( j# y schedule = new ScheduleImpl(aZone);
# ^; r+ O+ U% m5 Y$ U2 @; F try {
8 J% G6 D8 G: g+ T& t Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 p/ u7 C! }! U+ |; W Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) s# @2 f# T9 y: ]$ A; C: m+ z
5 w; E! Q! V+ G7 J
actionGroup.createActionForEach$message(list, agentSel);. ^! e/ z0 Z, l. z. T, O6 y
actionGroup.createActionTo$message(this, swarmSel);
* f. w. i8 Q2 ^ schedule.at$createAction(0, actionGroup);
9 Z$ b/ j5 y. W: H4 W$ V7 q schedule.at$createAction(1, actionGroup);7 K$ v+ W+ W+ }" F# \$ C# \
schedule.at$createAction(2, actionGroup);
; A7 @6 ?0 ], t) S% T
" n4 r) I: P% T3 P6 b$ R, U) Q } catch (Exception e) {
& }, J0 R5 o( m+ m) X% c! {) j7 T e.printStackTrace(System.err);
2 y# O, N, Q% T$ z% k. G+ f, ` //System.out.println(e);
; o, E; E6 m ~1 j7 Q# l System.exit(1);
; `2 n* K" C8 M/ Y }
4 z: z) @+ x' m. z6 V* f
) U' O# W9 c, j
* p" z7 o( H3 M- q0 e }+ B1 L: A* T; Y/ D6 Z0 s! O" n$ l
* g! I6 y7 W( \0 q f; y" U9 k private void swarmSetp() {
9 u, S& I5 w3 c* Y6 m list.addLast(new Agent(Id));, t; ?- w) X' `: U9 O; N
Id++;2 P# I6 A3 g+ c( K
}! B+ g. H+ ?4 y" B# R
+ J% d, O2 r/ c public Activity activateIn(Swarm context) {
, p1 \/ h. `( I1 N, I super.activateIn(context);- y' ^* z* v: K& I
schedule.activateIn(this);
4 h, m* _6 U7 w; F6 z return getActivity();
8 g. o1 e' I. ` }
0 h2 ?; ?) |# A5 I4 S$ v: ` g5 o* A% @
public static void main(String[] args) {
' @5 @: S# W7 F% R# U( L& Q* P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. W4 W4 A% g: a: H, l# g1 B2 o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 K' w- T1 d- P9 g2 j swarms.buildObjects();. {# ~/ n2 Z" ~5 \+ X' A
swarms.buildActions();
% x# n& ?: P- Z4 i swarms.activateIn(null).run();' f$ z" x+ X- ~1 u" [/ a# M
}
% d/ Z; N1 e" S1 s8 c$ C' \: `1 j3 G* m/ y
} |
|