|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * J' a' i6 s; J( i4 V' B# k
, F4 F* e1 @! M m" T: C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 N7 `% f7 j5 P/ h! e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' s7 T9 Z7 k" ?: r: ?2 ~
swarm.SignatureNotFoundException$ S; P/ }) I4 I z
at swarm.Selector.<init>(Selector.java:76), }& E) ^6 T! ^, w* T F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( J8 }% k7 A! q) W
at ActionGroupDemo.main(ActionGroupDemo.java:67); E+ i+ j8 I+ {8 `
4 ]6 P0 j+ O$ `$ @6 H8 t$ ~" ~' A1 S/ L8 ~0 F$ w+ p+ I" R
import swarm.objectbase.SwarmImpl;5 U6 ~4 n: x& y( K% Q
import swarm.objectbase.Swarm;6 Y' Y5 p9 ?' @
import swarm.activity.ScheduleImpl;9 _/ t( e5 R& s; r' ]
import swarm.activity.Activity;* n" Z# _6 c" U8 U
import swarm.activity.ActionGroupImpl;) x6 I- I& V/ N# R$ I
import swarm.collections.ListImpl;! m& d3 n5 g+ E- r' }
import swarm.defobj.Zone;
- }0 K# [& A6 ?import swarm.Globals;
b9 S3 E1 l6 W9 {import swarm.Selector;
. e& o. l) P* ^/ ~6 w' W: I; l# M3 aimport swarm.activity.ActionGroup; & ~! i& L4 R' u4 ~' `3 L% h1 q% |
class Agent {
0 I. n7 J# J& Z$ a1 E8 S char id;
* M8 m2 X0 ~$ z
. B5 H2 Z! V) H8 Q. I( f Agent(char id) {
- q! [4 b$ j0 e# F" K: @ this.id = id;
% Q8 I1 |7 v2 P }$ g/ d. b) J: R) v* w
1 n1 d' I! L G$ I. B" J
public void agentStep() {
$ P# S& J" Z0 z! I; M System.out.println(id + ":" + Globals.env.getCurrentTime());
( y' m& J+ }* H7 G' f }
3 X& o0 E& }5 W7 N1 j5 b2 |}
% O8 d0 @" i# z4 ], S+ c `
/ Q# a- o& o& Z. dpublic class ActionGroupDemo extends SwarmImpl {- W D8 I& ]( I+ q4 t2 g: c
ScheduleImpl schedule;
4 s2 o% `! I/ v# J ActionGroupImpl actionGroup;# {- k8 L1 A+ j7 ^
ListImpl list;
' L6 P. ^: _+ o4 k: p% L0 D6 T5 R char Id = 'a';
0 a6 ?5 u2 a J& k! Z* ~( a/ q
' h- u; ?8 i# u ActionGroupDemo(Zone aZone) {- z8 ?4 n" K3 ?4 U2 z! j U
super(aZone);$ S+ j! ]$ m% D7 O# C4 m
list = new ListImpl(aZone);
8 Y5 |) {3 k. K7 E) B% m2 u swarmSetp();3 b( t% V3 i( l9 H4 d
actionGroup = new ActionGroupImpl(aZone);
$ I4 m) J( {, I* M: h5 m9 M! H schedule = new ScheduleImpl(aZone);! [9 a5 |& `3 G2 }# ~
try {; M2 w0 T1 _8 B4 v/ E
Selector agentSel = new Selector(Agent.class, "agentStep", false);; o2 Z* v2 M) e1 u4 |6 W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 e t: ] r# p$ H- k8 w
- n; z! U6 _2 w$ A1 H9 l actionGroup.createActionForEach$message(list, agentSel);9 Q* h7 }% @( P2 n* ^) r- w5 P
actionGroup.createActionTo$message(this, swarmSel); X) {/ W/ p3 I* F( g
schedule.at$createAction(0, actionGroup);. F, T& ]: ^) h4 z2 T
schedule.at$createAction(1, actionGroup);
- W* r% X3 S3 O: k0 ?5 D, B schedule.at$createAction(2, actionGroup);
1 ?- d: p: t% u6 j" ~
?0 O" H1 r, v* `* V5 [' }+ }1 U } catch (Exception e) {
: s* f3 t0 l) A# j4 ]* N$ q e.printStackTrace(System.err);
# `( x& D4 W0 m" s //System.out.println(e);& G; S5 `4 I) P! {; N) O
System.exit(1);$ y( c( {: W4 j9 n" K$ @
}$ T" B2 P; a0 l4 f& c
3 N: }2 m9 d6 h* L Z) o* I- R# r- c: q
}# y0 C( J( t; _! J
+ `, g* S! T& K! _( I# y! \
private void swarmSetp() {
* W0 h; |/ Z- v. x list.addLast(new Agent(Id));/ s, {) n5 x9 f" K
Id++;' W* H/ g3 P: v( W" A- f$ N; F
}; |+ p) [- W9 w' X3 w4 _" d" j% n
4 P1 O1 q' k# z S
public Activity activateIn(Swarm context) {
6 |* [) K* }- {! `+ C2 L super.activateIn(context);/ X, L/ Q6 Y; h. W+ _
schedule.activateIn(this);5 q1 M: ~( @# ~/ }( c- F
return getActivity();+ N1 T/ e1 Y2 I- [& p
}9 o7 ~2 c8 A7 u2 _* L5 i
$ _2 X( N( l/ s1 [3 e public static void main(String[] args) {: l+ k; k5 G' Y; k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 d6 E1 _1 k! i. l5 Y7 u* K
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ A6 Y+ L9 X+ q, u6 `
swarms.buildObjects();
+ q4 d6 B, u/ g2 D0 q0 Z% ` b swarms.buildActions();
8 \6 u5 a+ V5 r) y& a6 z( y swarms.activateIn(null).run();
3 R: ^$ O6 x! P9 l7 L }
( o6 r0 w) P1 z; Y+ x0 I6 T- ^/ u0 o1 f% i% G. C
} |
|