|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 R% A; o6 A% `- S8 t) W: }! n5 @* b$ q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: h" O) U# d5 n4 Y4 u8 w. f4 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
[ p) {! e2 N6 i) C. Mswarm.SignatureNotFoundException/ s4 W$ b8 k& X8 J( y ?
at swarm.Selector.<init>(Selector.java:76)
5 W& h$ e; C4 t3 B; ~0 l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 @7 c5 u d% W( U
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 [- Y! g+ c9 ]3 ]" _9 W
! Q$ L' f" }3 i3 S; Y
9 R3 S$ f! b0 |6 b' @8 ^+ S
import swarm.objectbase.SwarmImpl;6 h' _ i% [$ Z7 C; x7 s
import swarm.objectbase.Swarm;
8 h) s0 K: x, l9 c" g' D2 Mimport swarm.activity.ScheduleImpl;
q5 g% G3 P5 a, y/ _, Q4 ~" Fimport swarm.activity.Activity;# i' N7 n( g2 Z% W
import swarm.activity.ActionGroupImpl;) ^& s# s1 Z. o' @% q
import swarm.collections.ListImpl;% u9 A% @* f5 T- @
import swarm.defobj.Zone;
/ Z6 @9 b3 u% L$ Limport swarm.Globals;
6 V( h% ^/ U. K5 Yimport swarm.Selector;; W \! d* i& V# g+ g0 C; A) `6 O& c6 G
import swarm.activity.ActionGroup; + u9 ^9 |9 k, u }; x8 p
class Agent {1 _1 u5 L& `3 d! [0 ]* A
char id;
% x4 a8 C+ B" b! @8 C) e6 b- \' t9 J N4 K+ l/ r
Agent(char id) {5 X, Z, }! W5 b
this.id = id;
$ u/ e' f0 G# K, f. }2 V! n* O }3 E! l, c4 n1 @- d [
2 `8 ^) Y/ X, b) e public void agentStep() {
9 j& ]# o* J$ p$ M) c& U System.out.println(id + ":" + Globals.env.getCurrentTime());/ G$ a% @7 ~1 J: l- v, f6 l
}; P6 p8 m" H& g8 D' p
}. \6 U" c, h8 u0 n& W/ _
# R$ W' n# ?: w! d3 Ipublic class ActionGroupDemo extends SwarmImpl {5 j4 W- P" H/ k- q6 W9 n
ScheduleImpl schedule;/ x- S; D: Z& I9 K% E" ~- H
ActionGroupImpl actionGroup;& {, U2 ~( ~) K% G3 R) c+ r
ListImpl list;
0 ?# p/ P6 Z3 \2 N8 L: F: T r char Id = 'a';- Y# W5 Q- a K+ s
5 r/ T; P; @, ]$ Z8 o8 B6 R9 o
ActionGroupDemo(Zone aZone) {# {/ j; F4 z1 r2 [1 V
super(aZone);' H9 c/ b+ E; [( t. I/ [
list = new ListImpl(aZone);
: F z' M! R$ f+ P0 U* {, S swarmSetp();
2 D; e" O) {0 B actionGroup = new ActionGroupImpl(aZone);+ c% x5 n% k" @6 R+ \7 G
schedule = new ScheduleImpl(aZone);: I3 @! U# ^; O, _! ^
try {6 E1 r2 a( Q$ u! i- P+ h
Selector agentSel = new Selector(Agent.class, "agentStep", false);# a- d% U; C3 e; F) v: l0 J8 ~; L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 p3 I( j8 L- G6 m% o2 x6 }$ L5 |
0 N' t' U P6 W/ M! v actionGroup.createActionForEach$message(list, agentSel);
3 k0 K1 {! R( w; ~! T4 Z1 t6 y1 N actionGroup.createActionTo$message(this, swarmSel);
# L+ \1 i1 j: W2 e; ? schedule.at$createAction(0, actionGroup);
# Q) \2 K# y& t5 E: r6 {' m schedule.at$createAction(1, actionGroup);
8 R8 j1 d* D' y" U schedule.at$createAction(2, actionGroup);; m/ e7 e+ V0 P6 ^# d
2 \8 W. t, r3 ]; E } catch (Exception e) {
( @0 R" F: c0 V e.printStackTrace(System.err);
* q, e- k3 F) G //System.out.println(e);9 L) _3 t+ ]5 v0 O5 C/ [
System.exit(1);1 z U( H; u% ^: n6 E
}8 m' M& N" q. x7 o" H# ~
9 W/ N& B7 |4 ?5 N+ s, p
1 p& b( Y" A4 H' y6 F+ u# W/ _ }* {; n2 u( [1 e+ B. b
4 L; @$ y) ?$ A: G y
private void swarmSetp() {0 U4 ^$ h6 s9 F/ D( m7 K
list.addLast(new Agent(Id));
% W' H1 G: N: s7 i& J: q Id++;; a j5 T/ `& b
}
+ d# S8 d1 k( N# X% ]
" Y' c, I# x& f. r- Y2 l4 W) }( p public Activity activateIn(Swarm context) {
( ] p0 e: m$ |0 ]" L( n super.activateIn(context);" O. |0 s. p2 T) J
schedule.activateIn(this);, w5 Q( s/ g4 n7 {3 W/ b& w
return getActivity();" l, }+ }& Q) n8 K
}
; U3 S( |; [/ x7 C5 c* z0 l7 f* V: p! L* t% n: `
public static void main(String[] args) {
5 ] I* W7 e1 I Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- I6 Z0 |/ Y' c6 F Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! d& F$ m# U2 _9 ^7 J
swarms.buildObjects();& T6 Z4 M" v0 ~! m- b
swarms.buildActions();
( z: R# X' I" G2 M% \6 h" F8 g8 n! [ swarms.activateIn(null).run();
8 n) J( m, Z0 V- k1 C; f }4 \% U/ K! i; D
7 D! ]7 h3 s. L& i6 ^' ~; P( s
} |
|