|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 Y) T; P8 q0 l3 t+ X2 X
. \8 {4 U$ U4 w% J$ n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 u$ k/ c7 I- C2 J3 p0 {1 _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! s7 q6 f ?/ k; f4 W! P, V8 l
swarm.SignatureNotFoundException) L0 R8 }# ~( Z
at swarm.Selector.<init>(Selector.java:76)5 P1 E9 v0 O3 L* T
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 Q- o% ?" R9 A. ]$ ]$ G at ActionGroupDemo.main(ActionGroupDemo.java:67)
* X s. \, h+ n A- e2 {. N% j0 o; M6 O, S3 W' {; m
$ K( s8 P3 H$ y4 i/ B: O* D
import swarm.objectbase.SwarmImpl;
, t: N6 T* T# j+ A! Mimport swarm.objectbase.Swarm;
/ f% x( {- V$ T7 S) K! i+ d% u, w' k4 ]import swarm.activity.ScheduleImpl;
) y+ r: I$ l# oimport swarm.activity.Activity;
L3 U J& S' I8 ]" Simport swarm.activity.ActionGroupImpl;( I; }. G6 p9 p+ O. [' Z) v
import swarm.collections.ListImpl;
# J& G" r! {# wimport swarm.defobj.Zone;
$ z( `$ q- L% l) v: @ J) Z; nimport swarm.Globals;- o# v9 v" c" N
import swarm.Selector;9 Q" f/ E1 V( z8 |
import swarm.activity.ActionGroup;
% V$ {$ t. G- Oclass Agent {* p3 T4 h5 x; j2 y- }7 Q$ n7 l
char id;/ U2 B2 i" N9 }6 j, o- b4 G7 {
2 z' _9 P% |9 C4 B
Agent(char id) {
2 h E! U# |5 G/ B this.id = id;
* q( S' [* ?' @. n T5 M2 ]# u }
$ t! }: Q! `. O) A) |* n
; d5 [! \3 T' x0 C% Q. U7 C# } public void agentStep() {
" m4 t8 Y- U; x; J% \/ I2 W1 l System.out.println(id + ":" + Globals.env.getCurrentTime());! S8 o( ~9 ]" H& d0 F v
}
( E: t# O2 C8 G0 u- t3 j}: m, a( \4 e3 _ P# G$ Y j
4 [3 A* j# h: ^5 m# b. k: f
public class ActionGroupDemo extends SwarmImpl {
! Q( m) C( q$ H: a c5 o6 d0 \3 ?* w ScheduleImpl schedule;
8 ~5 f2 y, C2 j! m ActionGroupImpl actionGroup;, ~ Q( v: n: ^- {6 U. @' R: m
ListImpl list;; Y" c' M4 b9 }5 V. @( t$ ]
char Id = 'a';$ b; y# w( w: C6 }# j
+ A, d6 j! a6 S; z/ o
ActionGroupDemo(Zone aZone) {# v' k) X: A- ]5 \2 F2 Y8 \
super(aZone);
! R6 Z- N/ f6 }5 m8 z" x3 q list = new ListImpl(aZone);" t' L) s0 h* q' Y w$ y
swarmSetp();
0 H$ a& G2 K6 T a actionGroup = new ActionGroupImpl(aZone);
7 h: _2 s2 v5 n7 a schedule = new ScheduleImpl(aZone);3 P# t3 G( U6 Q% y, l7 r
try {
( ]7 s. G6 U; b' J- T% E Selector agentSel = new Selector(Agent.class, "agentStep", false);1 H' x7 Z. B1 w! ~8 f4 L/ J
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 z# [6 f" g/ ^ 1 @( e y, n; _ ~: E+ w
actionGroup.createActionForEach$message(list, agentSel);4 I) W" }" R5 ?, g$ g
actionGroup.createActionTo$message(this, swarmSel);" U! k p, S1 T* f, z3 a, a
schedule.at$createAction(0, actionGroup); {# k& E! @- T# e: T
schedule.at$createAction(1, actionGroup);0 g, N5 @8 Q& w5 f& @ W+ J7 g
schedule.at$createAction(2, actionGroup);
$ F+ j' V" r$ s/ |% K, l+ M& c$ r+ l) p. E* a
} catch (Exception e) {0 E3 G8 s* t- W4 N' @& V
e.printStackTrace(System.err);. k2 b. W) P. T/ U
//System.out.println(e);
8 _$ n' c- p0 a# c System.exit(1);
$ Y8 F1 t& O& t5 b }
! W/ a4 h7 Q7 h/ h0 `
' K8 q# R' O6 q K9 a/ F1 n: B% W# w+ t$ S
}# d/ i% w+ e4 `+ G
/ k, |7 F- l$ g0 }% O- H6 L private void swarmSetp() {
+ V. Y% r) N# G: A6 J" { K7 m) Q/ | list.addLast(new Agent(Id));
% ?4 B+ P* g& F) S+ _3 u Id++;
* k- R$ n, I* H$ Y2 \: K }
3 K2 X; k5 l! d% B& j
+ I- m. E6 L/ r8 M2 ` public Activity activateIn(Swarm context) {
+ H% b7 R2 M* h. i' A; L! W super.activateIn(context);* ]; k2 s; H9 {4 ~; k' Q
schedule.activateIn(this);- h0 m3 U* s: |- v: X
return getActivity();( K: o# Q% j8 B! L* A* j
}: ?- u# v6 z; K+ f/ M: I
; R/ }( Y" y3 I, Q
public static void main(String[] args) {, ?# q8 d' C5 ]% V& ^/ E! A1 R
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: m, y/ c8 y" P7 t! u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 G; S6 [0 G. Y4 ^% E) {, j/ x5 C
swarms.buildObjects();
" x) p4 R, J- E swarms.buildActions();% l% w6 j( ^+ g
swarms.activateIn(null).run();# A! ^1 l) b0 P* U8 e8 T8 Q5 S9 I
}( Z' ~% E9 H: g9 B4 m' b
% U: e2 b% M% t$ F+ p! p} |
|