|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 r% k5 D. R( P2 `( z# L o+ Q: [# W7 @# W4 f5 J+ c: @5 I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( `7 l* o4 _* w1 C( E. h1 D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% \8 |# Z: V. U8 x' a! Y% A$ a; t3 I" P
swarm.SignatureNotFoundException- o6 v( V" N/ ]9 d5 N8 E% s% d
at swarm.Selector.<init>(Selector.java:76)5 P% n7 x! E/ z: l$ V$ R) n2 B
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# U) ~! _1 `' M: u1 W at ActionGroupDemo.main(ActionGroupDemo.java:67)! J, P( Q* X7 u. R" c2 i. {% r
; G1 A# e+ p8 }& ]6 u
; `% l0 N4 f; _! i ~
import swarm.objectbase.SwarmImpl;0 f0 q2 d8 d" ?
import swarm.objectbase.Swarm;4 i$ ?6 d3 t; P& r3 {- f
import swarm.activity.ScheduleImpl;6 K1 L) X! O l
import swarm.activity.Activity;
. R2 K& j7 j) K: g( V# x' ~) m- Cimport swarm.activity.ActionGroupImpl;
% D7 `5 z' v2 x: v: K/ O! {1 V" E: Wimport swarm.collections.ListImpl;/ P, |% d6 A1 M& r# K3 H6 U
import swarm.defobj.Zone; 2 `4 u5 Y2 s- g
import swarm.Globals;$ _8 m7 Q. _/ d$ N1 }1 K
import swarm.Selector;$ x7 W7 F$ w9 W1 Z; F3 v' b1 x
import swarm.activity.ActionGroup;
5 ^1 j$ f+ L! Z% D H$ {class Agent {
; `+ W/ h% _) Y' [6 B9 g char id;
% S" P$ ?8 R/ B1 h9 Y' a1 c9 J1 B( F% r& L) i
Agent(char id) {% E1 y C4 L9 p. ^# O
this.id = id;
8 w" |# H. e; f/ T. P* j9 e }* a& \; S) R6 q$ H& C/ T! B; d
1 H3 A; Z8 c3 z8 @ public void agentStep() {
4 R* ]' g7 ~7 L! ` System.out.println(id + ":" + Globals.env.getCurrentTime());
6 M& Z4 Z# w# _3 F1 J# z% \ }) g# u( M9 V P
}3 Z6 r2 q9 A' L# [
: U* @, b' t) L2 ?
public class ActionGroupDemo extends SwarmImpl {
2 H" G. m7 i0 _ ScheduleImpl schedule;5 W }" R, q! u5 {9 Z) t1 I* H& J B
ActionGroupImpl actionGroup;
* U$ Q3 {0 V+ M2 E: C. Y ListImpl list;
* ^# Y; z6 Q" U: C" o char Id = 'a';1 |0 L |7 D& v# h. X* E
) D5 V5 x! h& {( ]- A ActionGroupDemo(Zone aZone) {6 @& F% ] o2 d
super(aZone);
8 }/ N/ Q+ m5 n( F- Y3 G list = new ListImpl(aZone);: }& J' N$ ~$ ^
swarmSetp();
* l7 p2 S \+ |8 ^: C3 V actionGroup = new ActionGroupImpl(aZone);
6 w% W4 R( {8 ~ E& Q schedule = new ScheduleImpl(aZone);
( h1 B( Z' X/ x* m; o try {
( b+ T5 c$ M8 b2 Z8 O. M Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 n6 ?1 U0 P& N' ~7 ]( z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 P0 M1 V8 ~. e8 v1 z
, |" V, _0 d" V: V' a; h actionGroup.createActionForEach$message(list, agentSel);
; t5 i4 M1 {- K0 b) O3 j actionGroup.createActionTo$message(this, swarmSel);7 M' {+ k% D- A! b l0 S7 ]
schedule.at$createAction(0, actionGroup);9 N# `$ E7 k: I+ _ e5 v# @6 Q2 u
schedule.at$createAction(1, actionGroup);& \9 B t8 B$ J' |1 a: m5 O
schedule.at$createAction(2, actionGroup);
' F7 i$ [5 t, ~. T) @. E1 C, b0 N' |" h9 Q$ ]! K. X
} catch (Exception e) {; x7 X3 s4 Z; c5 r( w# O
e.printStackTrace(System.err);
' B& b, q9 n% e# }2 E //System.out.println(e);
0 A3 b0 R; q* B6 A' J+ | System.exit(1);" ?; d/ s9 k8 `1 v- F
}
4 D1 u0 ~. B8 G) [9 c
; X' M/ U9 P; E l. E. F: R3 d3 G, W2 N
}
* b( R% P. V) z/ b% J$ _6 |/ M1 r' Z8 W* S* N
private void swarmSetp() {
, g( B! Y: [, T! f; }3 a H% L list.addLast(new Agent(Id));2 ?. ^# s. x% j4 T, b; j* e; `
Id++;1 z& P6 t6 g) b0 O! }4 W
}
- V0 J$ k4 ^1 K& L- @; l# Q0 G, g* f# a
public Activity activateIn(Swarm context) {8 ?8 J+ X3 D0 Z1 k$ u2 Y( m
super.activateIn(context);
1 e( M1 p) \1 D i* J- j schedule.activateIn(this);
# }: I5 ^- r$ s- w3 B) B6 l0 C return getActivity();# _" c1 J" ]1 L' i- ]1 ^! C
}4 v }& H. _, q& K# e; w6 E
0 @* M$ i9 a- @& u$ h2 ?6 ^ public static void main(String[] args) {3 F( ^: w- ?6 o% e. N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ ^0 _( G, v, @! N( c$ m5 H+ E
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 }: ~" `' B6 j2 \+ n @" l2 w6 x. U
swarms.buildObjects();3 T) H1 X1 ?0 C6 g2 d: e
swarms.buildActions();" I% d! }( O0 f3 m" J( {
swarms.activateIn(null).run();
* u% F$ ?. d; C- [ }
/ s1 o, f0 ^& }* B
, r6 _% b! c9 A3 S2 J& P( x} |
|