|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 l$ ~( m- D7 p% |* o' v$ ^% d
% s, @! ~' u {, x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 Z' o; ?+ z7 ^( M5 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ |7 K8 e6 o' }0 Q7 p! Y6 tswarm.SignatureNotFoundException
/ }2 u; X: j8 u+ a+ r5 Z, L at swarm.Selector.<init>(Selector.java:76)# I* ]1 }9 h8 a/ p3 \; l
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# @" R& Z( g$ ^; q
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ o4 N B+ v9 v1 k* k& I+ g# B: o D7 y: G9 s* ] m0 o2 {
0 N0 P R3 f K; h7 jimport swarm.objectbase.SwarmImpl;, R: B3 y: J2 a" @; u7 O
import swarm.objectbase.Swarm;
6 j9 s0 _$ j! T9 J* iimport swarm.activity.ScheduleImpl;
4 [/ V' M1 @$ r6 w9 }import swarm.activity.Activity;
' _! H- n. a( a& w( T$ Yimport swarm.activity.ActionGroupImpl;
6 ?: ]0 P0 L# W# uimport swarm.collections.ListImpl;0 o7 _5 s- c% k1 M/ e$ M% t! i$ U6 h
import swarm.defobj.Zone; 6 E/ [) [* }% I5 h/ g
import swarm.Globals;! P3 w. O z8 t* @ J$ l P
import swarm.Selector;% j+ M8 A* }0 s4 F( p4 f) y# e
import swarm.activity.ActionGroup; 6 k' x4 ] o# I& z( B8 d6 z
class Agent {' V$ h; f& ^2 @
char id;2 g, i- U" I9 Z$ b
' b! _9 H) t8 w" ? D/ z+ c. C Agent(char id) {
' T7 x- W; R E' _. a$ h: |3 w this.id = id;
- J/ Y/ [+ i2 J7 G }
& s# t* L' B0 ~% H3 W6 j( @
; [+ u: f6 l4 O2 K public void agentStep() { O* C( s! I! e' \' s
System.out.println(id + ":" + Globals.env.getCurrentTime());/ ~$ F5 [6 [% M$ m# q* S& E0 ^
}
1 `+ j C$ Q# z# V7 j}
1 J5 p1 Z' C, p. D& {: q, V0 D$ ~( [. l6 H8 E2 D# ^
public class ActionGroupDemo extends SwarmImpl {) @0 [4 }% F; f
ScheduleImpl schedule;
* h8 q, s3 G' a ActionGroupImpl actionGroup;
# d: V3 [" m. D2 }1 l ListImpl list;4 h. f8 s& j, b* q) S0 v
char Id = 'a';" b- W3 |& {! @2 i
5 l9 J9 y+ M2 p5 l
ActionGroupDemo(Zone aZone) {& C- x6 d* e `" v/ w6 [
super(aZone);
4 I0 _3 o( |; }8 Y4 U$ X$ [ list = new ListImpl(aZone);; r" F0 w6 b9 C
swarmSetp();6 g' W6 S7 ~. N( A1 Q( t
actionGroup = new ActionGroupImpl(aZone);! A9 u8 P4 l( r, Z7 Z2 U' r% N& Z4 P
schedule = new ScheduleImpl(aZone);
9 p' A$ s/ \5 s4 e) A* q try {
7 q; l9 y, a2 O( x, T0 A# U* O5 U& Y Selector agentSel = new Selector(Agent.class, "agentStep", false);+ m; [9 c$ f4 J' {% Q# H7 `% ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 m2 U$ r5 L+ o. e
( L: Y, }( q# ]2 R1 | actionGroup.createActionForEach$message(list, agentSel);& B1 L) l2 I1 A7 w' H
actionGroup.createActionTo$message(this, swarmSel);7 t: z3 B8 h9 t$ L% I/ H: z# L8 P
schedule.at$createAction(0, actionGroup);
" Y* g4 j2 ?* d9 M schedule.at$createAction(1, actionGroup);8 S B1 K2 v" w# }6 K- T
schedule.at$createAction(2, actionGroup);
) T7 T$ b" `3 C7 d: E1 E+ S" ]6 }9 C6 I; K" `3 j3 _: i
} catch (Exception e) {/ ~4 n7 `% q% Z* R
e.printStackTrace(System.err);
& s. c( b/ K9 E8 w/ P9 p* K3 ^# H //System.out.println(e);8 F; J" U3 J" t0 h; i0 o
System.exit(1);* O3 c/ K) j6 R+ X. B& t
}
9 g" I2 z/ h- R* q, A( C7 k% U$ U4 F) M8 z. {
i) B5 V4 f: `$ m/ o }0 {7 w& k5 P+ R- R. B5 x6 _& [
+ c4 l0 o/ Y' W5 z6 c; x, l private void swarmSetp() {
! {6 s6 t" a) Y. b! L! h list.addLast(new Agent(Id));
' c7 F. x2 T/ l8 e8 J, j Id++;' v2 x9 l( U* Y: z# N, H7 h
}, {4 }8 e0 s, H8 a$ Q
( |% X% L' I. N% G7 i1 q public Activity activateIn(Swarm context) {8 l2 |# \. w b. B5 X/ L9 U" m
super.activateIn(context);
% p! d2 ~) k4 Z- D0 m schedule.activateIn(this);
q5 I2 x. v) w0 X$ j1 m! K' W return getActivity();. E& f) Y1 V# n5 L
}4 B9 x6 @" z+ h- h1 F! _, a
# ^2 o( d3 P/ a5 |% D% V
public static void main(String[] args) {
3 ? v) w0 j7 T/ V" I" l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 v, B: G% C( M
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- s7 E( ~$ I4 X% a swarms.buildObjects();
) b- _* U7 f6 c p swarms.buildActions();
& g) }% n! b' @& r* [5 E swarms.activateIn(null).run();! L, B8 L8 ^- Z
}
f! u+ s# J q/ d; A1 S
9 M1 j. @7 r% {+ T: S9 g} |
|