|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( a7 [# S6 d2 @. z( R5 U G
, p3 A2 J( z' d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, d }5 M; d7 _( p! m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 h5 y2 y I) \$ {swarm.SignatureNotFoundException8 R9 C3 B2 Z5 z5 M
at swarm.Selector.<init>(Selector.java:76). r# z; q/ e1 L7 h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) g) Z& o0 d2 z, \ K at ActionGroupDemo.main(ActionGroupDemo.java:67)
' k9 V5 d5 I# G8 x: X& M
. i7 f( t* H( Y# L. [! l& L/ t( s* s' D- j8 z
import swarm.objectbase.SwarmImpl;- [! a. b1 L- ?2 g8 p: X) j9 ?. l
import swarm.objectbase.Swarm;2 K6 {% H3 u( L. k$ e: T B2 E
import swarm.activity.ScheduleImpl;
8 }' s U) F. x: timport swarm.activity.Activity;( w# G* S0 ]# _: {: L
import swarm.activity.ActionGroupImpl;
7 S: S5 i1 `8 t/ ]import swarm.collections.ListImpl;2 ~1 D2 m% x2 G& X! J' C
import swarm.defobj.Zone;
* F4 ?+ m) r6 [1 I# v. w$ I: bimport swarm.Globals;0 a6 [7 J; F7 [
import swarm.Selector;
, i L; v2 O: d3 Wimport swarm.activity.ActionGroup;
4 B% j( A; v3 d4 P) Dclass Agent {
8 o; t2 u! h3 J4 F6 Z; L char id;2 V" h# ~: q5 h* |: H+ c1 w
9 i4 Q3 N% \/ ]6 h( q
Agent(char id) {& }, E; k4 B$ x* Y3 v; Z
this.id = id;
: ^2 m+ v1 W" `3 }& m8 Q, D }/ W! M7 | B& _2 }( t
; a2 l, t5 I3 \$ \. |) D
public void agentStep() {+ W% f% p. C5 n3 ], r6 \
System.out.println(id + ":" + Globals.env.getCurrentTime());
7 M& R* t2 l- o2 ?$ C }
/ `* f& k& w/ ^- t$ C. f% ]}1 f4 d& j) M; @; X$ [' c/ s
, L" D$ U) I' t9 @
public class ActionGroupDemo extends SwarmImpl {2 T/ A9 o! D7 u. a1 w1 @8 P
ScheduleImpl schedule;1 c% y, C% c- H& e; J$ O" @: @
ActionGroupImpl actionGroup;: F1 X! g c7 H) \2 N
ListImpl list;1 w4 }- }- I/ @! v
char Id = 'a';
6 A% q( i! Q& H: }$ O* i! t" v, l% O; C
ActionGroupDemo(Zone aZone) {
$ S) k9 o* I" }! O( Q2 J) n6 D super(aZone);2 f( O, v2 @6 W; f; E5 \9 W+ D
list = new ListImpl(aZone);9 }$ A% B, O9 _" v. p$ U) q
swarmSetp();
+ i6 U8 I, N$ `8 K( F1 ^8 h actionGroup = new ActionGroupImpl(aZone);1 x& l2 M; \, ~: n8 L, ^, d/ l& h
schedule = new ScheduleImpl(aZone);
9 p( G( U" y! o! n try {4 r& {! H8 b. A1 M% x
Selector agentSel = new Selector(Agent.class, "agentStep", false);# E9 ]6 S$ |" j! U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ ?3 A7 x, Q1 _9 k ) r* E: O5 M1 p3 I% b8 ~8 R9 i
actionGroup.createActionForEach$message(list, agentSel);
, I! x+ c' b0 V7 M. S actionGroup.createActionTo$message(this, swarmSel);
' X b- t; t& ^/ f; d# G! J( g schedule.at$createAction(0, actionGroup);
& I. ~( b0 E9 X) y3 y schedule.at$createAction(1, actionGroup);
8 X7 R1 F; k- ? schedule.at$createAction(2, actionGroup); Z5 w1 S- Q" E5 X) j, j
# x& I. h" l* F: J( J- q } catch (Exception e) {
: E' s7 h# s4 \ e.printStackTrace(System.err);
7 E) p' s" S# j% W' _3 ^ //System.out.println(e);! e8 W2 k9 {( K# z, L5 j
System.exit(1);& N& e) f! O. o4 }0 P" e+ P
}5 o S* V# g7 x
: J" t8 z" L7 ^
% z! E9 ]5 L, H, j }
$ N- ?% G: o& c. [9 H, M( h7 p& j8 n% v# I
private void swarmSetp() {4 L; V+ C, u! m% {# F
list.addLast(new Agent(Id));
) _; @7 Z1 f- o$ f0 I3 q9 K/ f Id++;
: Y8 J8 Q4 N5 |$ i/ P E" | }4 @# |8 T4 p9 ^* v$ X, K
* ~7 B* d% [2 e( S" @* }* [! P6 ]! G public Activity activateIn(Swarm context) {, h0 z: ?, _, z5 a5 y7 E$ `
super.activateIn(context);
0 l) d- a6 ?& p( m1 B( P schedule.activateIn(this);* X( M$ k+ e% l6 v% X
return getActivity(); e; P9 `" B1 A7 G; K
}& O- O' G$ m A1 |% F2 Q/ [
) x6 P z& ?8 I8 m1 w
public static void main(String[] args) {
. Q( s1 A" K6 K3 ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- y1 ^( c- f) E2 H9 d
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 ~+ |% Y! T4 f2 k% m* r swarms.buildObjects();
* E. e/ j" J2 q7 h- ^ swarms.buildActions();
* Q8 l5 F3 B6 H4 Q0 `- Y* ~ swarms.activateIn(null).run();; N v9 D( w! K" z6 b+ r
}- l" @7 e2 h" `* Z# ~
, p u0 _3 V5 G1 y1 w+ o$ |} |
|