|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- R* k" Z8 x2 e; D+ r1 i: ^2 Z7 ?9 V* e/ V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; a4 i+ ~7 v3 [: |+ ?1 P% ]# n8 o/ m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( p9 Z, l9 T% u% A, A) iswarm.SignatureNotFoundException) B5 L& x9 W& U) x
at swarm.Selector.<init>(Selector.java:76)
a* v3 Y# \7 N3 T- y q" g& A at ActionGroupDemo.<init>(ActionGroupDemo.java:37). I0 I5 x! t+ W+ R1 d
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; F9 L; h( E, u% t0 A9 s$ M5 I. \4 h
3 M! K1 K9 q) i4 \import swarm.objectbase.SwarmImpl;
6 Y: O7 C5 a I; N( B, H6 i% d$ uimport swarm.objectbase.Swarm;: h8 |" V. i" m6 l( l' J/ \
import swarm.activity.ScheduleImpl;
; Z* t4 o& X5 R5 {* Y0 u1 }5 ximport swarm.activity.Activity;: J. K- T6 }$ J& ?# H1 Q
import swarm.activity.ActionGroupImpl;
& m: `( o' l. Fimport swarm.collections.ListImpl;9 ]# p, |% n" D1 D/ i' q0 Y3 e. `
import swarm.defobj.Zone;
! r+ [$ C$ W y8 J Dimport swarm.Globals;) V, h* Y7 i; t" A# ^
import swarm.Selector;- G' \& M& ^, {2 d$ d! [
import swarm.activity.ActionGroup; ; V7 t. v0 _9 E/ W
class Agent {
, h7 A, i+ t/ o& ~/ S) E, h char id;* }+ T, D/ D4 H0 }: c! H
# l$ i; }+ d% M) B
Agent(char id) {
; U. S" _$ k8 n% A this.id = id;
5 D/ [( \0 r0 p# i; D4 F. _ }% W& X' g6 ^8 `5 x, _. @, t
4 h9 t) Z8 U; W5 W) \( B# R3 }7 T
public void agentStep() {7 _) w2 l- K- U: D6 R3 C- V; C1 H
System.out.println(id + ":" + Globals.env.getCurrentTime());
: E+ p3 L# e" }# \5 v8 P; g }
$ b/ H2 A( W9 K3 ]}
+ M5 m$ a. U4 G( A1 b) t' Y- d0 w6 ?. o5 t& n, F% t! L9 C
public class ActionGroupDemo extends SwarmImpl {
/ w* u. D5 P; }' [+ R2 O ScheduleImpl schedule;; R9 a! ?2 z1 C, E
ActionGroupImpl actionGroup;3 y/ l7 M9 g( P% b
ListImpl list;
( W& U. U4 W: W char Id = 'a';
( N! v/ k# P, ?0 S+ }6 T
2 k) E" _) \ J9 m5 F1 h ActionGroupDemo(Zone aZone) {
* i% m( C3 l h1 I" {8 }% S super(aZone);% Z) \' E5 c C" T
list = new ListImpl(aZone);" O; M; [3 v5 e/ p& }
swarmSetp();
! K# q7 @0 r7 w* X, u) U1 W actionGroup = new ActionGroupImpl(aZone);
: f+ h( I- Z8 t, f schedule = new ScheduleImpl(aZone);
L) s* l) z. K& I* ^ try {
/ M: t' Y7 r5 F Selector agentSel = new Selector(Agent.class, "agentStep", false);9 z' C9 U3 x% k+ S- N2 |
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ b& [( U/ ` B! ~' h4 n# d/ q3 B5 G
0 n9 s9 }- b$ h( v3 p1 ~# i, W4 y actionGroup.createActionForEach$message(list, agentSel);
/ U7 P9 c, u0 s4 ?5 a- e+ D$ M actionGroup.createActionTo$message(this, swarmSel);/ X; \% P; N0 ~4 L" Z" R9 A" q! h
schedule.at$createAction(0, actionGroup);
8 e% M7 @% i; P5 l+ v schedule.at$createAction(1, actionGroup);
, q$ F: \1 a: n. S/ q2 G9 q& N1 V schedule.at$createAction(2, actionGroup);
5 _+ k' r. F% _" b6 U. t9 J0 m3 r9 B* {
} catch (Exception e) {; z& [# r% h- o, ?0 n
e.printStackTrace(System.err);
6 R, G. r7 f! S4 O //System.out.println(e);
9 Q; @& ^( _! W; k. ] System.exit(1);, A* P! F, j; p
}/ H a7 e+ t) M! n
5 P; N' M3 Z4 P; ^0 _
! C( @, `. ~1 G" ^$ l8 C0 c
}% g( ?7 l& y2 K2 R: Z9 j" c$ o$ o* z
" k, r* e, q/ c" q2 @) Z private void swarmSetp() {
- c2 J6 |" ?* z1 z/ {1 x list.addLast(new Agent(Id));9 Q2 k0 B$ {, X2 `6 g3 U( f
Id++;
- I" U. n! E3 H: F8 _8 _3 ^; V } x! f1 N2 w. I- C. g/ k) L# F
+ Y8 ]9 c& n9 q
public Activity activateIn(Swarm context) {. H$ s; x- m6 f5 K
super.activateIn(context);
- J( K3 N* i( _4 G$ n schedule.activateIn(this);
7 L- B+ v8 `- F- T% B return getActivity();6 _$ E; A; f( P- V- \+ \
}; R* {" G2 g. a. q$ K
4 y& f) I! G4 w& f! P public static void main(String[] args) {& v1 d) B" H2 b( E0 x8 ]# Q
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* Z) c% j+ Q" A- A0 o! B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% d" Y( c/ V0 o$ u swarms.buildObjects();! h/ t8 P( d# O* Q/ X
swarms.buildActions();
9 I0 O! \7 `" `0 B2 o* b swarms.activateIn(null).run();
: C5 p5 ~3 |8 G2 Y O1 D }
3 U. n! h+ g7 c1 f
# [( j5 w' F+ q5 f7 n} |
|