|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 {+ @) d3 Z% k/ V! R% c
/ l1 f) T! n. ?8 P" Y. c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ F6 G0 C+ W) T Q8 \) d' ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* G5 D! C' x6 C8 E& i0 S0 Cswarm.SignatureNotFoundException
2 _2 h: Y% Z0 \2 A at swarm.Selector.<init>(Selector.java:76)* _8 \/ O8 y4 t* F2 e, \% ?
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- @, o4 M2 a- N$ B( m, L5 y6 |+ k
at ActionGroupDemo.main(ActionGroupDemo.java:67)
- V! ~) q& T! d1 y. K& U
# L" g: L, G7 H4 g+ \
% ?6 Y' a: T( q, Vimport swarm.objectbase.SwarmImpl;2 S; `; }0 [: d/ V4 {
import swarm.objectbase.Swarm;0 J8 x; r4 ?* `0 w2 z, Z9 B
import swarm.activity.ScheduleImpl;7 J) H" [+ |( b9 o% |
import swarm.activity.Activity;
* ^! b4 u" i+ e: @! Timport swarm.activity.ActionGroupImpl;5 ]2 z7 m2 U9 G1 t3 D) c1 `
import swarm.collections.ListImpl;6 u8 U+ @+ m5 S1 f1 m& S' b% K- J8 k% Y
import swarm.defobj.Zone; : ?- x7 f9 ^2 M& }" q( t
import swarm.Globals;/ U1 r$ n6 P- s* Z; r# P
import swarm.Selector;
: Y+ ?8 G3 m" `9 f( oimport swarm.activity.ActionGroup; 5 @' J, k$ T9 K9 H8 Z
class Agent {* U2 G V( K4 D( U. \# N% H; x' Z
char id;
7 l- m. K. a) X# S: m) \; d* H, ^0 w# y7 z; C7 M! n
Agent(char id) {/ b6 n2 Y: ^7 i5 k' L0 e
this.id = id;
% z3 b! `0 ?) S }: n2 D) J! q( Y; J; \
. }$ G" e+ N$ M/ h! ?9 {# B
public void agentStep() {- I1 I/ \% h* A( E. @
System.out.println(id + ":" + Globals.env.getCurrentTime());3 h. p; E3 y4 n# c. ~ ^" t9 ?5 ?
}
# R. J0 I& f* i R( Q2 X* A' s}
, G% t+ C% `5 J
* Z( `; r0 K: j/ Cpublic class ActionGroupDemo extends SwarmImpl {
0 @/ Q/ H/ O4 A1 u/ |$ z, I ScheduleImpl schedule;
3 k+ N4 U8 A1 M, k" P ActionGroupImpl actionGroup;, C; u" G. P0 B7 ~8 t/ Y8 N7 T# _
ListImpl list;
p( K3 o |8 m ] i: E: Y char Id = 'a';
( n1 I( w% M T5 L7 F- w/ E0 Z. F) j W* E1 H% _- T# N
ActionGroupDemo(Zone aZone) {6 B3 A# X; q9 q7 f v- s' C
super(aZone);. B P% G% @& M0 u0 K
list = new ListImpl(aZone);
1 m' d) g# O$ F0 ?& O8 ~$ m# o swarmSetp();
2 R5 _6 I+ f/ D) Z5 U/ m: |5 X; F' p actionGroup = new ActionGroupImpl(aZone);
- p. b) t) y5 i% D. [3 ~ schedule = new ScheduleImpl(aZone);6 y6 w3 Q/ O k: C2 t, k& p/ _; D
try {
: g" p, A# Z- U& T, z Selector agentSel = new Selector(Agent.class, "agentStep", false);" q4 Z6 @# ?8 ]5 R, ?
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' l ?! _5 S' w! D$ Y5 q
0 w2 Y( W* J7 z8 Y* G
actionGroup.createActionForEach$message(list, agentSel);
; ^! ^1 E* k) k( [# _ actionGroup.createActionTo$message(this, swarmSel);; V- b9 t1 S( o( d W
schedule.at$createAction(0, actionGroup);
% E; ^2 F6 W0 w4 P schedule.at$createAction(1, actionGroup);
" ~. l% ]9 ^4 w9 Y& t2 g* } schedule.at$createAction(2, actionGroup);+ Z7 i3 P( B. n3 W7 G" A
# W5 {& q* U4 t# m: H3 D5 F8 ?
} catch (Exception e) {
) i( B! M$ ?1 b. M% q _9 C3 R e.printStackTrace(System.err);/ A X1 B5 z6 I7 p! k4 ^
//System.out.println(e);
4 X- \% |# T( U0 h; R! J/ J) ?0 o System.exit(1);
$ I0 h: O+ ~8 A1 m% y( S }
$ E# e, k) W/ V. F5 S& W3 m F4 U! N4 o' ~+ d% z/ f
. a7 \! R; d s8 G7 j1 @
}* k: }* f3 p" h6 T- x% j/ o
3 j/ |8 a6 G" K( I# O
private void swarmSetp() {
2 G T) C6 j G `1 A5 t list.addLast(new Agent(Id));$ E7 a2 J' y/ M
Id++;
$ e$ z$ z& |9 z, t/ i }" A; O5 T$ S+ _4 M! d; N1 |' `) r
. @9 ^$ `4 t# I
public Activity activateIn(Swarm context) {- y- P2 {! Q6 Y# S0 |
super.activateIn(context);
7 ~5 \+ w( o5 ~: ?$ `3 c/ n$ M. t7 e schedule.activateIn(this);; t$ @# e9 |" q0 o' V5 {9 e
return getActivity();
" i7 C+ k9 j9 ]0 O5 v }5 q# }" l2 I3 ?1 F, Z
. ~2 c$ y- c+ {+ c, n$ k$ C# [0 x/ O
public static void main(String[] args) {' o# F: z1 ^4 [6 G3 H+ K: S. j
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! G0 G8 v. Q) Z d7 T Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 X: S5 t& u% |+ }4 j+ B `& O; W( h+ `
swarms.buildObjects();0 C( I1 ?! Z+ ?! d. Y# M
swarms.buildActions();
* c2 v/ e1 C/ A6 P swarms.activateIn(null).run();& j7 y; W6 H# T, A1 |
}
- r: J6 L P! b$ p& y) |) Y& Q1 r+ P5 |, ?5 K. Q$ C' C1 J
} |
|