|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! X4 r7 |1 q/ K Z) Q a" W% K' h! Z% ^2 R0 C' N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 v/ o- j2 I" x4 T2 r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., m$ I. Q$ \) U7 X g% \
swarm.SignatureNotFoundException$ w/ }4 e1 W- o$ k7 ?, z
at swarm.Selector.<init>(Selector.java:76)$ t, n; T" J# D4 y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 t$ N1 d4 d2 \6 e9 r
at ActionGroupDemo.main(ActionGroupDemo.java:67)5 g& ~: f4 Q. Z: F- a& u: ~2 b3 i
$ d+ K' C6 z6 D% r% x
4 f% N- X; c1 e2 Q0 | N7 a0 Oimport swarm.objectbase.SwarmImpl;1 E+ J% i8 y: ?
import swarm.objectbase.Swarm;% N4 ~8 h2 x; T. S* i- v
import swarm.activity.ScheduleImpl;% e& M% I ?. ]
import swarm.activity.Activity;7 _! t: j" a: m# S* g [5 @
import swarm.activity.ActionGroupImpl;
* P& M" G5 G5 Z6 I/ ]5 J. s$ Cimport swarm.collections.ListImpl;1 |4 O2 e, `5 R8 ^+ _3 ?5 y! x8 _
import swarm.defobj.Zone;
. k' V* V c W6 a+ vimport swarm.Globals;5 v) y+ u% f: E, \( o) @' H1 B( w' J
import swarm.Selector;
6 J3 u0 N' T2 }8 J Himport swarm.activity.ActionGroup;
" M. X6 b0 L8 V% `. C" Iclass Agent {
$ O2 V4 {9 e6 K6 C char id;
( M( P; b- m% z% {4 K0 J0 l% @ E# l4 c; u. s! [
Agent(char id) {5 }2 L5 I4 g9 c1 i& y3 O
this.id = id;
7 O6 [% F' n3 @5 A1 C* m5 b }& W) @# b* o( z4 Q. Q
; w3 q8 W9 T% m* R% t public void agentStep() {5 _. H! N5 f6 i& ^* `; d8 p
System.out.println(id + ":" + Globals.env.getCurrentTime());6 N8 l) u0 n; k* K- m j/ l
}
5 P: R1 l3 S: m$ Z2 k- s}
0 ?/ S( W( j, o0 l$ v- y8 l! g2 D% d) c& V
public class ActionGroupDemo extends SwarmImpl {- R' N3 q& i; ]+ c6 M6 A/ X$ ^
ScheduleImpl schedule;
9 l3 [& V n4 ]& V) @- C1 h ActionGroupImpl actionGroup;& x8 S% @! v( h9 x
ListImpl list;
9 m) Z- i3 @* J4 k- E char Id = 'a';
; W% ]2 i5 K' t5 B1 b! a6 u& D$ T: ^. E5 m# @" A$ r
ActionGroupDemo(Zone aZone) {
/ U2 J9 Y# @7 l7 [# k0 F2 h super(aZone);4 z/ o G5 P" ?# i- }+ G# [' k1 H
list = new ListImpl(aZone);
3 O* D. @% s+ W! W \) Z( y! o+ z swarmSetp();" Q7 ^+ ?+ c% s# r
actionGroup = new ActionGroupImpl(aZone);
; Z1 O- |* z$ n/ @. V( b schedule = new ScheduleImpl(aZone);
) M) Z; Y+ U5 _# v- K) g' q" f1 X try {) Z5 X) H9 z) L! Z3 x2 V1 \8 {: w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
( k! E/ L9 c4 K7 Q$ A* s2 x& |/ T/ F8 e Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% w% l* i) X; H7 |- G
$ X/ I! }" K' W actionGroup.createActionForEach$message(list, agentSel);
) l: n2 i& _1 W) Q actionGroup.createActionTo$message(this, swarmSel);5 Z; E) A: W) G7 H, G" n
schedule.at$createAction(0, actionGroup);4 E% p- @) n5 `# n' E p Z' h4 _' {
schedule.at$createAction(1, actionGroup);) [2 [3 I0 f- q* Q
schedule.at$createAction(2, actionGroup);
% I* F0 L) E, U& m1 }+ e( F3 T+ m( d: N7 Q3 ^
} catch (Exception e) {9 ~( q3 }2 C1 [/ R1 o; X
e.printStackTrace(System.err);
, p+ X5 ?% \0 `+ J //System.out.println(e);
9 z) o" A3 I2 V O$ ]9 G% [ System.exit(1);
& l' i* H& J# f) z2 f; `+ \- l }
9 }6 T; N& O% s; U' Y' [0 }5 y& `$ I& I9 C: W; p
4 N* a& v7 |8 K# i) M' p3 z
}
0 V: y& p" O* R2 E( u* |) P& Q) I% K4 y0 U
private void swarmSetp() {
9 P: L% K+ w! g! q list.addLast(new Agent(Id));
7 O1 r! n" a9 |; y4 u+ D Id++;3 }4 t, H( l5 C8 {% g* U
}. q( N5 N& l$ ^) C
8 s# I7 u; }+ }0 y public Activity activateIn(Swarm context) {' G1 D9 b6 f5 D
super.activateIn(context);2 D% V/ q1 ^' N: |+ r, m; e/ i) l& S
schedule.activateIn(this);
4 m' @ {8 Q; O1 v8 I. F return getActivity();: r& S+ w# a, h! y0 K$ Y5 h
}! Q* \4 L2 W8 Q6 b
K0 D, ]2 h3 O/ O5 g/ J6 c& |
public static void main(String[] args) {0 E6 a& w+ }. @& D' i8 g" G Q; ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 v4 A, d9 \+ L7 C: i
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: F4 ]& A- \$ ~& D. l8 z" d
swarms.buildObjects();
: u O7 f8 ]3 y: M swarms.buildActions();
& Q9 e r1 N; p2 j swarms.activateIn(null).run();# T1 r6 l" M& o* @/ N$ k7 C+ ]; r
}- S) ^& ?) l2 ?( a% H, [- F- ?2 X
( T) A) Z0 |8 Q: Q t} |
|