|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% S% x) O5 ~1 C8 f0 E( m1 `2 }& ?, S) o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ B: R4 v& k+ z2 G$ ]- _7 @, @/ z! Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 ^' ^+ |7 c! K% h9 h8 R! F- Uswarm.SignatureNotFoundException
! d1 l6 I, F$ \, m {' C+ u- a5 M at swarm.Selector.<init>(Selector.java:76): B5 w4 x5 q, |1 s& \/ ~- R" E
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: x6 s: z; ^! v6 A4 ^ at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 n2 E2 x+ `% s5 E
& I: B- y' U3 b6 ]9 z" t1 g1 b; Y; o+ ~7 @
import swarm.objectbase.SwarmImpl;
+ n( A6 S: B! @0 L# y; N! [import swarm.objectbase.Swarm;
/ W& l8 x9 ]& v4 e6 S3 s8 ^/ bimport swarm.activity.ScheduleImpl;
2 o s4 Z- ~. x& O2 Vimport swarm.activity.Activity;; c5 V# w; \& k0 \. v
import swarm.activity.ActionGroupImpl;: `; [0 ], Q! d8 H
import swarm.collections.ListImpl;
5 ]; E5 q- g* Q& A9 Y, aimport swarm.defobj.Zone; " h6 ]' v9 x' |$ l: m: h5 }( z1 W
import swarm.Globals;7 [4 J, @5 Z: U- x8 c
import swarm.Selector;
3 l7 N- V; e8 }2 H8 [5 Uimport swarm.activity.ActionGroup; ) D9 } z# A7 l+ ?0 V9 @. X
class Agent {1 I$ f' U% o5 ]4 w
char id;
) G0 J& m) z) H0 X0 h7 J8 ^+ `% S+ _
Agent(char id) {- H+ f- l: o3 A# R& g/ V5 i! D0 f
this.id = id;0 x; w6 n/ C8 Y* h
}) G* Z2 h+ e& I. f T7 x! d
" J; j: y. V$ o" d# Q2 ^* k, ~% J5 j
public void agentStep() {
$ V) d, u4 a" m# s System.out.println(id + ":" + Globals.env.getCurrentTime());
2 d1 j# U7 q+ [- w0 g# U7 A }
; U- Y8 q1 _" e& `* E}
" Y& d9 ]7 U& F# `+ q/ o& H. ~. p' ?: c7 J
public class ActionGroupDemo extends SwarmImpl {
' G0 E) `( |& Z ScheduleImpl schedule;( S5 |# w2 W3 ]! j& z1 x. T5 J
ActionGroupImpl actionGroup;' [: }/ x1 L9 l3 P, E$ }9 E
ListImpl list;
% T$ @( u6 j$ \! m/ o. y char Id = 'a';- {8 {2 t9 f) F8 m
1 B0 ^# S0 ^' d1 M" S7 Y( o& v: s ActionGroupDemo(Zone aZone) {* k& Y5 G z& w5 o2 B, p
super(aZone);/ N8 R% I$ n- q1 J, k6 c5 N n8 }
list = new ListImpl(aZone);0 w! b" }0 v7 _
swarmSetp();) w9 B* B7 x. a) \( A
actionGroup = new ActionGroupImpl(aZone);
! T+ f( }3 i1 N9 G schedule = new ScheduleImpl(aZone);
9 D0 w$ \. x4 e( ]! k& v, C try {
# r9 R X% I- l/ D# W2 \0 ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 {5 c- N j; c4 ~2 D' Y Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ y& Q1 a. B/ Q9 a& W
& S8 h' g5 [% _8 u
actionGroup.createActionForEach$message(list, agentSel);
& T W, \8 T. q1 I- b actionGroup.createActionTo$message(this, swarmSel);
! ~9 A/ ~5 ]* x4 ~, S schedule.at$createAction(0, actionGroup);# G+ y2 R) F9 P/ Q- B0 {
schedule.at$createAction(1, actionGroup);
: W. [. {# c) K6 R8 L6 h5 Z p1 M schedule.at$createAction(2, actionGroup);
. y' a5 s8 B, v& u/ Y+ C8 u8 P6 q% f/ |$ H
} catch (Exception e) {
+ `4 X* b8 L/ _5 t1 P8 h( z; H. G7 g e.printStackTrace(System.err);
7 Q5 ^1 | R& B# Q4 \ //System.out.println(e);
! D9 o3 ^3 d; Y( D) t System.exit(1);
& r; R( G5 G6 J, b4 x8 b! N; L8 b }( s4 X0 I3 q6 |) b$ P- ]. C' k
* ^: |5 G! i# J# z# w# I
1 }# L/ B( `% i }
; B* p# v: F( c& I) l
+ j8 ?4 T. J9 _) M( K! M* U private void swarmSetp() {( M ?- I- _4 O$ X0 x3 ?
list.addLast(new Agent(Id));0 M5 o w; X2 Q/ B" J& b5 f: K( i
Id++;
6 l1 n7 h4 M) O) i6 I }8 Y3 t$ A: ]) e6 ^( T1 c2 c0 @8 @
1 n# r& T! v' C9 P2 U, [/ } public Activity activateIn(Swarm context) {) z( {2 @1 E1 q- t9 w
super.activateIn(context);8 @; w! V3 e: J9 G. y. F
schedule.activateIn(this);0 r$ |7 z% \1 K" ]7 g
return getActivity();
6 L* h% @7 X; p" c }
b% ?+ p: G$ H( _+ y5 `' S5 D3 v C
public static void main(String[] args) {$ C; M! ^/ w5 s2 W" k" `
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; s9 S& ^8 D2 y8 U } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) `9 I7 v; S3 H
swarms.buildObjects();. |+ D' s( `8 h+ M4 `* F7 s/ S
swarms.buildActions();
4 R4 y# }' z7 v% g5 F% h4 M. J$ ~ swarms.activateIn(null).run();6 x' A! {& s: \" t
}" o8 k2 e6 z" {! `
7 O9 T0 v, z$ h+ ?! d2 U' z0 a
} |
|