|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 S2 a' @! q2 {7 f
; X7 w* F2 \* q, I4 R$ n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 M# e% U) n; E' }2 p1 n1 g V4 j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 q& ?* m K% l* `* v
swarm.SignatureNotFoundException- _& V, |! O% m s: i
at swarm.Selector.<init>(Selector.java:76)
& J+ D9 ]/ V" z5 ] at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ Z/ S* f3 c( O9 r at ActionGroupDemo.main(ActionGroupDemo.java:67)
; [" G8 B2 G7 h2 z0 b* g; ^) k/ {" z) D/ O( ~
/ }$ f3 e7 J M4 pimport swarm.objectbase.SwarmImpl;1 ]8 |! F" p( w
import swarm.objectbase.Swarm;
( @- ~, f# f8 b2 V1 Vimport swarm.activity.ScheduleImpl;
6 w% k" d; j" iimport swarm.activity.Activity;" A, M- A9 M$ S& K
import swarm.activity.ActionGroupImpl;
9 {& }5 T8 `+ {2 @+ Rimport swarm.collections.ListImpl;" |' \: O8 J' _: H' L" l+ k o- N
import swarm.defobj.Zone; 7 [& b" \3 \! g% t+ k
import swarm.Globals;+ v3 @! h c- c! s
import swarm.Selector;
* F% N, J1 n0 v+ nimport swarm.activity.ActionGroup; # l# f3 u4 r) G9 G" P
class Agent {
" g o, t- a7 {/ O ^" _ char id;
1 _" Q# Y- j) o9 f4 `% X% C$ |* i$ V f5 k T
Agent(char id) {
6 z' [$ o! @: W( Z- [ this.id = id;# Z* Y1 Q& j) t z" U4 @7 f/ f6 _7 g
}
- ^7 ?" q/ K% T( b2 D2 R8 h0 Q( k. w7 G9 M
public void agentStep() {) I) R1 g% b5 A
System.out.println(id + ":" + Globals.env.getCurrentTime());
$ @& L9 V: n5 D' H( B. W }
6 M' F( L! j+ j- n+ z+ o4 O0 `}' q6 T+ R M4 M \+ E
3 a4 p- J3 j) E1 r6 ^public class ActionGroupDemo extends SwarmImpl {
( ]; U2 c: M" q# y9 P ScheduleImpl schedule;
$ R0 Z5 A7 g q0 n O ActionGroupImpl actionGroup;' f% [3 b# t% ~& i, F' f/ n
ListImpl list;! M; ~5 n' ?! X, J" s5 Y
char Id = 'a';
0 g& U" I$ O" _% Q( e4 `7 @
5 Z, l: W) v. ]* ?7 l ActionGroupDemo(Zone aZone) {
5 d! D1 Q1 W/ n: c, z1 s" y2 } super(aZone);# _* n$ |& S3 |$ ] I
list = new ListImpl(aZone);& K2 g5 m+ X" j; y! E+ ~% b2 y8 A% {
swarmSetp();8 N. P! R) ~' A& d+ Z9 e- p
actionGroup = new ActionGroupImpl(aZone);& z2 y, P7 Y+ n9 k. G0 L2 \+ t
schedule = new ScheduleImpl(aZone);% ]6 {6 H) q9 F4 s8 t/ h6 r/ W
try {1 Z; f d- A, }
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 @3 l* k9 ]4 u" {4 v9 c2 L% n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( S! f2 n7 L3 \! K* H
2 f8 ~+ }1 `4 \ actionGroup.createActionForEach$message(list, agentSel);2 W* x, B1 X% f; I0 M2 P
actionGroup.createActionTo$message(this, swarmSel);; \ P% f+ V% [! e, j9 H6 ]7 ^+ B6 N
schedule.at$createAction(0, actionGroup);
6 O& j! Z; N, ]! b schedule.at$createAction(1, actionGroup);
0 f7 v1 ^9 e e schedule.at$createAction(2, actionGroup);* Q+ k$ A$ W/ Q$ s9 C' I' b- \6 r
( y2 y, h' J9 V4 j) p! ?6 V. ~ } catch (Exception e) {
- h' a0 N! B6 O' [( j- h e.printStackTrace(System.err);/ F+ D8 L1 K( ?2 e5 V
//System.out.println(e);2 s2 y, o% ?/ z q1 l3 R3 |
System.exit(1);
! i( b0 u B! g& ~% g }
3 z; e/ o; }2 G1 |( A2 y7 ]; l0 ?- g' Q) F" z$ A1 K
$ v0 k# U+ v8 W* R- S* Z
}
0 v; F# s: _# |7 N+ ?- B# k& `* ]4 _ ^
private void swarmSetp() {9 F* w3 N* o+ h2 H
list.addLast(new Agent(Id));4 x( ]/ [* S4 w t( F
Id++;
5 k) {: ^6 h [# Y1 r }. d% N' ]( g9 l% s2 q" J
8 n( A. N+ C) O* M public Activity activateIn(Swarm context) {& f( K* S, {/ S! m5 C" u0 C
super.activateIn(context);2 J( ^0 Q# A* S; p
schedule.activateIn(this);
5 A [6 T6 K% ~& p return getActivity();
6 ?, {: R: I! ], \8 y3 T7 G/ r }8 x& F9 e3 N3 s5 l
6 R' W' g2 q* ^( s, l5 e) E0 r
public static void main(String[] args) {
" I0 D- V' M- k* ~2 ]" b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ A- w: f( I, q% [7 t. r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 @ S! J/ W( b. t- d6 i swarms.buildObjects();
2 w) l( M$ H6 e& \9 i0 R! t swarms.buildActions();
+ Y5 ~5 r! ~8 s5 `* X% W swarms.activateIn(null).run();1 s9 G* A# a& T2 q* G
}" g3 N" w( ^- b& w$ ^0 h6 f$ N+ q
2 F) y8 N0 ~! ]2 y: W} |
|