|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 o2 K3 d1 p& l( J
3 ?$ }" ]9 @0 @7 H" X) h2 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& c' F( }3 ~* K T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% N: x. h/ l) o6 K, q2 { _& Q
swarm.SignatureNotFoundException/ G. c/ p, c& i6 Q- W2 K
at swarm.Selector.<init>(Selector.java:76)
" P6 m$ m. \9 O! `1 Y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- \7 _( b5 D7 ~- j at ActionGroupDemo.main(ActionGroupDemo.java:67) u& q, P& }) |; y) A
, E# U8 W3 C, |" n @! b
" E( R3 m2 b4 p7 w* m6 O2 T: l& h8 Ximport swarm.objectbase.SwarmImpl;( h x u- K! y( c8 j. ~
import swarm.objectbase.Swarm;
; R! k' O f* ^) J$ p- H" [import swarm.activity.ScheduleImpl;- t0 B2 Q9 G3 O1 g# T
import swarm.activity.Activity;" }8 A" U0 }7 T( E! O; z, Q$ U
import swarm.activity.ActionGroupImpl;8 l* ~+ \1 F4 K4 B x1 D
import swarm.collections.ListImpl;; p) \' v: M: x N0 g8 j# [
import swarm.defobj.Zone;
% s. T2 l, F0 V0 M" _import swarm.Globals;
2 o! K7 r; L# Oimport swarm.Selector;* A0 W: L- [! Z3 V9 H
import swarm.activity.ActionGroup; * c6 m B2 l! `/ u1 p
class Agent {2 M6 @+ P$ f/ M% O( z; L9 a
char id;
( w. L8 F2 Y) N& r+ l# r' N! K% j, z+ q( [5 S. z2 F B+ \2 d0 Q
Agent(char id) {
% ~. j+ v5 U, z this.id = id;8 m B* Y, Y* v1 Z0 Q5 ]
}
; O9 G2 Q+ p9 |2 p! @
. ~4 U( t u5 y2 q4 M$ j" U public void agentStep() {
: A, A( G* ] G6 H; O' f0 c System.out.println(id + ":" + Globals.env.getCurrentTime());3 B, v0 L! z, Z, \! t
}- b- y9 ^4 |; _7 D$ P
}: z# M8 G$ k; m# e. S- ^% T
4 U3 ^3 d% A7 Tpublic class ActionGroupDemo extends SwarmImpl {/ _( Z4 E- l* @9 D
ScheduleImpl schedule;. k" N7 L8 _' \1 T. I7 v
ActionGroupImpl actionGroup;
9 a9 R" y6 ^- s* s8 P ListImpl list;! U! K# r \( m" A2 s
char Id = 'a';
, y. B# J; `$ D+ u c3 N% D: }
8 k/ Y# N. U1 p: v. { ActionGroupDemo(Zone aZone) {
( z' |. x4 N' m6 q) Y super(aZone);; I+ H' D# n: J3 L
list = new ListImpl(aZone);
; K; O5 X8 _3 O" g* O0 o9 U, L swarmSetp();/ O' d. J. q! F% O1 J
actionGroup = new ActionGroupImpl(aZone);
2 {" Y- |7 j9 [5 D schedule = new ScheduleImpl(aZone);
1 c0 i0 u- {% y S try {5 u( }" Y8 t8 [! |* u, _6 W
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 {2 R% j2 f3 D5 Y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 `* V" G1 \ ?6 q$ ^5 X4 l* W: N 2 ^0 \7 S& s) O; x3 ^
actionGroup.createActionForEach$message(list, agentSel);
! M, X& b6 k# i- G& Q* N actionGroup.createActionTo$message(this, swarmSel);
: b# g" U% F, m) D" K- o1 D, f. a$ R. } schedule.at$createAction(0, actionGroup);
$ r a) l, A6 @1 ~; C schedule.at$createAction(1, actionGroup);4 f0 P) W5 q' d: y1 }, C1 L; ?7 W7 [
schedule.at$createAction(2, actionGroup);
, R! ~# r+ l) m! H+ p7 V% T8 f
! `4 V( R/ ?) o% N; Q I6 i/ W } catch (Exception e) {
' Y* j& A, `' E( [ e.printStackTrace(System.err);+ Z" W5 Y6 I0 R% K3 {: j
//System.out.println(e);. C/ ~# o% Y, Z* i; H
System.exit(1);8 ] U9 Y& e5 Z& H4 _( I/ U/ D% ^
}
$ D- K8 j( s# ^8 t! t3 z/ x
! b7 Z0 \$ g( a% S. X
: l& ]& O( g0 q }! L. {4 |" C6 u" ^. W1 T
" q, Q$ s) V0 V
private void swarmSetp() {+ _+ M. h ?) n# ? z' V
list.addLast(new Agent(Id));
% w- m$ r# K3 d/ H- y2 p6 T Id++;
& u' R- z% Y) B3 s& w4 l. h. V }& v/ D/ t, v5 k4 t% ]/ M
. H- Q/ F0 k8 s$ D% C, }+ L
public Activity activateIn(Swarm context) {6 T9 N, u9 V" K8 K2 ^6 O
super.activateIn(context); r. U" s% ?6 h
schedule.activateIn(this);
: ^% Q$ D' m7 a% }" @& t. e q return getActivity();: A( \# u" l2 H- _4 U+ Q2 s
}0 x: x& S+ Z/ c# y; i: N
, o. r9 L; n1 R4 H public static void main(String[] args) {
- u- e/ U3 l) v9 C) a* S. h0 q Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" @, V' s T$ {$ f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 x0 }- A. Y% t8 s0 J8 L/ z7 e
swarms.buildObjects();
" D; H9 U+ ? X @4 T7 F swarms.buildActions();( ?5 n# f7 g4 d
swarms.activateIn(null).run();
1 U+ q& ]$ J! `4 n: b$ y! B }
5 A! H, @! ?$ S/ m9 z4 v- i
4 ?+ \# X" F S) t: c} |
|