|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # A+ O* u& V+ s2 z4 G
+ {. h: I, y8 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 c! \3 W( n1 h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# Q/ N: u* j3 D0 k8 {swarm.SignatureNotFoundException
4 Y5 p" n3 X# }7 F T at swarm.Selector.<init>(Selector.java:76)5 _3 x; z: k( ]; n3 d8 p: n
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' _4 h& ]; q& w6 a7 |- t3 U
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# I0 d/ F# A- d9 u# {* k3 _8 N$ t' X# A6 P# i
1 c" ]0 e3 D1 [. Z2 s4 R1 l
import swarm.objectbase.SwarmImpl;. I3 d' w+ c( ~3 B: b, M; g
import swarm.objectbase.Swarm;$ G- O) _# l0 |" X6 G
import swarm.activity.ScheduleImpl;! T9 T5 T' d1 g$ I! |. j
import swarm.activity.Activity;7 o5 J1 `. z0 G2 c6 ?
import swarm.activity.ActionGroupImpl;0 c# _2 N% R$ d% x) ]
import swarm.collections.ListImpl;
" I" b+ q/ k/ h8 U+ ^( Mimport swarm.defobj.Zone;
% g, s: X7 o7 |: h0 uimport swarm.Globals;1 V9 l _7 v$ k2 _% W4 {8 u
import swarm.Selector;" [. p( `& y$ L
import swarm.activity.ActionGroup; 6 a: @9 I& C9 k2 g/ b* W' A; S* Y
class Agent {2 U/ X! g% V9 U. I$ n; p
char id;* ]2 ?1 p) m5 j+ V u
4 n/ D. a' n6 b3 I
Agent(char id) {
+ D! p- Y8 ^ H, q! Q4 y this.id = id;; Y |% O# a2 S# {. I+ t9 Z( P
}6 Q' g# O7 e& ~2 y! @! d* w L
# o+ r. S, F1 m, |! }, ^
public void agentStep() {5 e1 X" N( ^; c* h. J
System.out.println(id + ":" + Globals.env.getCurrentTime());
2 M/ s/ _* E: \* C }$ X+ e$ `4 a2 J( l6 [
}$ |% m7 d r. Q
+ t- \# s) |1 Q- A$ u4 n
public class ActionGroupDemo extends SwarmImpl {* g9 `% d* ]; z# k, F# J
ScheduleImpl schedule;
# I: \6 D* m9 f. o Q. | ActionGroupImpl actionGroup;
" K! a5 T! @, L5 U8 H ListImpl list;0 l# ^ V& U2 T% l' I( t
char Id = 'a';
& E6 h5 u% M5 C$ j* K, N) C: I2 Z- C, ]
ActionGroupDemo(Zone aZone) {
5 U3 J+ J5 H% H: M super(aZone);
9 P x8 c7 W. t3 S list = new ListImpl(aZone);& s9 N/ R5 t; |
swarmSetp();
" s; }! }* }7 w$ J actionGroup = new ActionGroupImpl(aZone);
! t% I/ f* i9 _- I! ?8 O: d schedule = new ScheduleImpl(aZone);) e' \% s+ w# B# v- b9 E
try {$ ]6 y2 d, t B% R* i0 v
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 s' Y L0 u9 c0 l9 M
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ V: _, l8 M) Z. C( N* I. @0 j / z/ L# @" C2 J$ S$ m
actionGroup.createActionForEach$message(list, agentSel);
% w$ e' g6 U6 } actionGroup.createActionTo$message(this, swarmSel);% f+ m5 a4 k" o$ f
schedule.at$createAction(0, actionGroup);
) R( B2 F+ \3 N( M3 Z1 Q3 Q) S5 B schedule.at$createAction(1, actionGroup);' }0 O3 T+ B/ ?' Q! |$ u
schedule.at$createAction(2, actionGroup);9 [2 T: C: e/ o
; o6 {! Q# {/ V- r" m# p
} catch (Exception e) {, }7 D2 e& r u; x2 ]6 Q
e.printStackTrace(System.err);- Y6 E1 S# v+ s4 A8 Q+ P7 v
//System.out.println(e);
1 E. p$ k$ Q% D3 z+ c4 t) R System.exit(1);4 ~ v; p- E3 ]
}
; D/ k0 n% {) Q( h9 b, S7 A1 E: W' Z' p
. e* y; y" n0 S5 I# q8 U }: @0 ]/ b$ Q" s1 p1 Q m* S( u
; h/ I* n. ^. p U private void swarmSetp() {
0 M' e1 u. [- p9 F" \9 ~ r& V* `: k list.addLast(new Agent(Id));9 E+ [8 z1 ~( O0 t3 b
Id++;/ L2 K- C, c2 C' E6 u* J
}3 u2 o/ U1 r% Q2 z! W
+ Q+ n2 v5 \+ r, H7 I9 O) p7 C public Activity activateIn(Swarm context) {0 h; ~7 ]9 {# `' }. [. C- U6 F& I) G
super.activateIn(context);
( Q9 g8 h0 M3 C: S' N schedule.activateIn(this);
( x" N& C+ n- B& c1 _ return getActivity();0 P- i. a; ]0 c
}
& E" R( P; C" c% g5 R n( T4 x. q2 X9 q6 s" r: Z+ b, D- {
public static void main(String[] args) {/ X R3 \8 n, f6 \9 H3 w( f- k# C
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( P/ \" e: r+ O- v" ?4 D& M% f
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 s( F k# O) E4 T7 w swarms.buildObjects();5 m" O8 C& _. y! ? ^- H$ d! _
swarms.buildActions();
% Z: j* R% L3 @& p( [( K9 w8 g- b+ U- S swarms.activateIn(null).run();
0 Q, ~) x6 R* F' H* u% U2 W r$ Y2 O; E }7 p, ~5 T: u) N9 u( B
) [6 N* ?7 `4 l} |
|