|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 O& j/ j5 q: q3 o6 J
) e \' V N6 M9 w$ i( I1 G& O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ f1 Q6 h* R+ u. t. w) S7 X- Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 _0 J4 G8 C- Z& m- yswarm.SignatureNotFoundException& U1 Q" ~; A, ?; f+ s( P4 S ?
at swarm.Selector.<init>(Selector.java:76)8 d s4 v. d: |. y( O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: B) ?4 {5 B+ o7 C! A at ActionGroupDemo.main(ActionGroupDemo.java:67)5 z' x8 R! u {8 @$ n2 R
9 B" }( M* R0 k) ]. E) X4 l2 O& f; D& U
+ I2 s: O% ]3 N: [9 S
import swarm.objectbase.SwarmImpl;1 s7 Y4 x9 a2 V
import swarm.objectbase.Swarm;
# \. R1 h+ {5 himport swarm.activity.ScheduleImpl;
2 ]0 X. T1 k0 m8 q1 E: Pimport swarm.activity.Activity;
+ n& t" e/ Y- B+ jimport swarm.activity.ActionGroupImpl;
* X. }! Z1 ~" A; `/ K8 g, p9 i* cimport swarm.collections.ListImpl;/ l* R5 k, t( \
import swarm.defobj.Zone;
8 N2 S Y5 E& `; I( _import swarm.Globals;
: }7 M( J. G1 T* p% M& ?import swarm.Selector;
2 l: {* K) o5 ^& Bimport swarm.activity.ActionGroup; ; }! d9 c' R( |
class Agent {7 |$ w3 S. O! h% q
char id;
. J8 ?4 u+ {% B7 S
) ?$ a$ \: m. l Agent(char id) {" f7 T, i4 X- k0 k+ ]9 C
this.id = id;
# I+ O; I: c0 j0 h& Z; v' ^. @$ { }9 [1 c/ v- M _6 n7 R( \- E# R% r
8 o( l8 e! _$ c
public void agentStep() {3 V1 t, {1 r# q1 t. H
System.out.println(id + ":" + Globals.env.getCurrentTime());- i% R) G9 ]. }: B# L! r# M
}& Q2 X0 ?* W/ | |: O3 ~
}- r: i7 C* l$ ^* W( s
) F @5 j, Z! A1 o) R
public class ActionGroupDemo extends SwarmImpl {" M( H1 \6 R/ {; Q6 X% R
ScheduleImpl schedule;8 P# L$ A* {+ t* V i* \
ActionGroupImpl actionGroup;1 s# H: y2 C) W3 ?; h
ListImpl list;; _* _ L `; T* X" G& C0 R
char Id = 'a';
" n. J" C+ v7 [! d% N% Y6 Z- M+ h* K2 R) E( O2 _: H: j
ActionGroupDemo(Zone aZone) {
8 V, t& Z1 ^, F: S+ E2 z7 g super(aZone);' z+ ?) x7 T$ h( F+ h1 `6 j c4 H
list = new ListImpl(aZone);
8 c# U) d0 \" u0 b% i swarmSetp();+ Q% n t; K: f' w
actionGroup = new ActionGroupImpl(aZone);
) l- {6 ~9 Y" E0 K0 s3 G' j5 ]. d9 U schedule = new ScheduleImpl(aZone);
* ]8 G% _. T$ Z% r9 M try {2 G- O) U; v: e' U( Z5 ?, D
Selector agentSel = new Selector(Agent.class, "agentStep", false); W/ e2 j+ f5 ]" J! P0 e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 ~% m# O1 e; D - {- L, N5 _+ R0 A F
actionGroup.createActionForEach$message(list, agentSel);
! n- ^- {. G4 {+ U3 f1 d actionGroup.createActionTo$message(this, swarmSel);
; w4 q( T# `7 c: ^9 t; b% R% `+ Y6 v schedule.at$createAction(0, actionGroup);2 f/ o, h: L4 C: g* ?6 a. L( d
schedule.at$createAction(1, actionGroup);
* x# y% T* J8 b( d7 I. R# f schedule.at$createAction(2, actionGroup);* _7 c3 {) `' r( c) \! y' N
! f* u! \( K! J k' {! C, L
} catch (Exception e) {2 l t1 |" F/ z! }; b% y$ e
e.printStackTrace(System.err);0 `. s' p6 s/ Q: A) Z$ C
//System.out.println(e);
: A/ p+ A+ R) v0 Y3 [+ _( q9 {/ V' Z5 H System.exit(1);- Q* n+ D8 W8 c( u, u
}
% E; x o5 n% t" x* G, B6 j* H7 M
: v# v; C3 h) } } z8 C8 w2 {; J, G
9 }' c& V" S" k
private void swarmSetp() {
& m% e- b/ ~- e" H* ` list.addLast(new Agent(Id));+ |) R' R; @# t6 Z/ }4 B
Id++;2 T: ]1 i, F) \4 m4 u2 O4 N' r( Z1 O6 u
}
% E/ Z b2 @% P- A( O8 u
1 P" j8 j M- m public Activity activateIn(Swarm context) {2 t; o. n3 `0 j. M8 A+ b3 F7 T; q
super.activateIn(context);/ j+ I ^2 ?& n
schedule.activateIn(this);
8 M, O$ T" w' `4 P return getActivity();* l: q, k3 A* ?4 |, n- b( M+ F, N
}
1 h3 a3 P& @% O
3 {. U" D+ x' D6 b# L/ B$ e public static void main(String[] args) {
) O: o! Z- _' a# h* ^9 S7 _1 T Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! _/ E! Z( @2 i( @( t, Y! S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; \! Q8 ~& T! r
swarms.buildObjects();
3 ?& h0 Y, T0 L. n2 k swarms.buildActions();' R! e: b4 E3 Q
swarms.activateIn(null).run();
) N3 N7 K, E9 j. e# d0 J0 O2 T, [ }
1 e" ^3 @3 v1 _) A
# e% a( j, r- D0 L" o6 s6 K9 d: {} |
|