|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' G0 T% i2 g; y+ `& V
8 P7 Y% m3 E& c2 L% s本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21 ~, s% k* Q0 ^) Q7 c4 P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* [9 R+ F1 ?: A: P
swarm.SignatureNotFoundException
; s* x8 @/ b' B3 \5 u: {) N at swarm.Selector.<init>(Selector.java:76), M' |8 x( s& s0 R9 b Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 ?, o. X. b3 A: C$ q" ^! r% g1 r
at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 p: N( W% Q) x9 M4 b" J
6 E" ?0 m, M2 K; _4 U3 J
" H# p% b( x' W' p# vimport swarm.objectbase.SwarmImpl;
: \/ w4 |+ r2 L4 U9 i! ximport swarm.objectbase.Swarm;& d' W' I8 P( J: J
import swarm.activity.ScheduleImpl;
6 g/ c R& C0 g- t. r6 {3 dimport swarm.activity.Activity;, ?7 a( k3 y) B R$ v/ V
import swarm.activity.ActionGroupImpl;
% t: S- |, G6 d0 D( P. x: ?! Z/ yimport swarm.collections.ListImpl;
& l3 v% @. `1 d4 M0 J4 [! n S4 yimport swarm.defobj.Zone;
# w" F3 q% C2 S0 N; L+ ?import swarm.Globals;
7 { k9 J( B s6 ?' m: i$ n( Fimport swarm.Selector;
* L$ \; Z& T# Z- t vimport swarm.activity.ActionGroup; ' O5 m6 S5 d* p! o: Y
class Agent {: W% n2 c$ J8 f* q/ }
char id;2 l2 j8 f; n0 ?& s+ {
; |8 f* n0 u/ X( y9 q# l. k
Agent(char id) {
! p4 `1 J( F u% f# T this.id = id;
7 j5 p4 n$ T6 E* R4 g' v }
3 X/ w3 H5 `! \. I9 q3 y5 u6 p
1 J* `7 R J% x public void agentStep() {; ]3 I/ j, E, ]( |4 U
System.out.println(id + ":" + Globals.env.getCurrentTime());. t/ h* y' c+ G( q0 b
} _" y! `1 i0 k$ X
}
. w; r2 o, ?. Z) g) e2 h! T3 |# ~: |8 E n
public class ActionGroupDemo extends SwarmImpl {
; H2 i$ W! C' t7 _9 U/ a ScheduleImpl schedule;& c( K4 _" C- N
ActionGroupImpl actionGroup;
; T- i3 u- @5 X1 N) j3 d ListImpl list;
+ N3 Q/ N( _4 ], _) V( S% v char Id = 'a';
( e, H2 ?% @/ T- b0 j: {5 i
2 s* H: }, j' A% l ActionGroupDemo(Zone aZone) {
3 _8 {( |$ }& s9 Y3 _3 \5 g super(aZone);
* b, A& W2 ]2 c0 ` list = new ListImpl(aZone);
a6 B8 u8 ?" ]7 i4 ?6 M; K) Y0 d swarmSetp();1 W8 B0 \) b- |
actionGroup = new ActionGroupImpl(aZone);" O& p- ~! Q4 G+ r
schedule = new ScheduleImpl(aZone);
! a5 m4 y2 C! s' s try {4 s! _+ j8 [& @7 Y- F6 R2 \3 N
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 m+ {$ Q/ @+ Z! ^ }( a4 D | Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( V9 F4 ?1 O& L* m
1 p( W4 z6 _0 f7 f- k# m5 { actionGroup.createActionForEach$message(list, agentSel);
# i# w6 ^$ o c5 c: k& a" L0 ]# r actionGroup.createActionTo$message(this, swarmSel);" V3 q' T# R( ^7 B; e; p: V
schedule.at$createAction(0, actionGroup);
) {# \+ f, {; X7 D3 S schedule.at$createAction(1, actionGroup);
9 F/ m2 C& m r7 _/ a schedule.at$createAction(2, actionGroup);
' ~& f2 b a4 l, m3 R
- v& k8 c: f" e5 c% E9 S' ]2 V } catch (Exception e) {9 Z& k/ A8 ? d
e.printStackTrace(System.err);
% S, J5 i3 W p! v6 M1 { //System.out.println(e);
5 r& N, l _) [. S9 u# J, M System.exit(1);
# T& |) e, z2 } }! {1 R" Y3 t' @' ~$ h
. P4 C. g* C1 k" w1 M
* [8 J) H! F! G% J }* o5 g0 Q$ y: a& K/ {1 R' X
3 {, o; f) o3 V6 Q- `* b private void swarmSetp() {
: N# _. r3 g+ o, z list.addLast(new Agent(Id));
5 K" M6 U$ l& `3 I$ } Id++;
" ]* Q6 U; `4 W6 V1 |* \: { }4 x7 o: _, G2 r- E
; C/ r; @& D6 \9 Z/ W5 {: ~+ Z public Activity activateIn(Swarm context) {
9 L4 S$ ^' D5 [$ K super.activateIn(context);5 x7 U+ n. `4 T, i7 D% l( O& L$ t; I0 G
schedule.activateIn(this);
# g; p1 N3 _) l0 D return getActivity();
5 ]$ I' q% c5 F8 B" N i" [ }
* _4 S/ S% j% K) R% ^. q! o. @4 J, I! @
0 V Z8 p g$ x9 h& @* n public static void main(String[] args) {
0 A! e6 @* p$ G# v/ [9 i# i- [: C' \ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! T6 e, y/ s. d3 H) B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 \9 [+ j3 [8 I* Z7 L! m
swarms.buildObjects();
% T9 Q( d+ |: V! y6 @9 j! m5 ^/ @! P swarms.buildActions();1 L8 \. y& g; r
swarms.activateIn(null).run();2 c* B8 q& {( Z# U
}# w! B0 J+ I+ e- |
! x4 Y6 t# q) e0 U/ Z9 }* M} |
|