|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + }2 p% n% X, _4 D2 n
* o: ~( a5 L4 k s2 }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 F% z8 q# X2 n2 g; ^2 @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! ?) G( X; q# C& q$ g
swarm.SignatureNotFoundException
( G$ k/ a% j# b# Q( f5 r8 v7 J at swarm.Selector.<init>(Selector.java:76)
9 j" V2 g; Z; W/ _* J$ U; k at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ V$ `5 _8 A. Z6 k# n& p. ~ at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 X& v5 k3 {( d/ S4 e
2 E8 W, s& H8 V: C$ f7 b* U4 S5 j% M8 G
import swarm.objectbase.SwarmImpl;
$ ~: X# w$ M* z2 g1 U0 `import swarm.objectbase.Swarm;
! o1 p5 B6 [* m" v3 a8 h2 Vimport swarm.activity.ScheduleImpl;0 z7 O4 F F; Y( L* h
import swarm.activity.Activity;
* Z; o; l; k# vimport swarm.activity.ActionGroupImpl;
- M; N! K9 M) g1 |* ]' gimport swarm.collections.ListImpl;8 b0 { n! B1 k4 T# F
import swarm.defobj.Zone;
0 s- Y) a) g% R( k* eimport swarm.Globals;
9 l& D, c1 f# z1 \0 bimport swarm.Selector;$ m' a) S# ^ ]% W
import swarm.activity.ActionGroup; " n( w5 D7 @- u" y9 |) j# w/ O% S. m
class Agent {
' W$ b' D) O; A5 r' D char id;
( _- x' \, G* y0 {
! t/ }: L/ F# n+ j! `4 O0 | Agent(char id) {
& R0 I" B, ?: | W) z+ I8 k8 q$ |) p this.id = id;+ _9 ~. Z- P' U
}6 @& w2 f; v: H5 V7 m, x7 A
. k4 p9 c1 `" p# N$ q1 T. ~
public void agentStep() {
) J/ s, K/ U# h/ m+ f/ n System.out.println(id + ":" + Globals.env.getCurrentTime());% N6 O4 J" x8 W9 |$ E
}8 r% |. o' v# S; h# F! I9 ~
}
* h8 ?& l7 R; _7 ]* H5 Q% u
$ ?5 r& t. g' x4 S, d. {4 t7 ypublic class ActionGroupDemo extends SwarmImpl {
# F+ Q; P- x# Q& p, o# `7 C ScheduleImpl schedule; l' T% b0 j4 ?+ R
ActionGroupImpl actionGroup;* ~* B, K) s* E6 M
ListImpl list;
6 Z2 z4 l' k ~0 @/ x; I2 [ char Id = 'a';( Y( _5 o3 d/ ?5 t% H# A
4 l* B" K; _+ }2 {) T6 h
ActionGroupDemo(Zone aZone) {
& z4 v# d) N& L super(aZone);
& O% N4 x' f! r, Q) e list = new ListImpl(aZone);. G6 y& m2 K. w) C7 f
swarmSetp();7 _- H: b( O# ?$ o9 }6 z
actionGroup = new ActionGroupImpl(aZone);! b, `4 ^. _: m9 Z& D* b7 r0 W
schedule = new ScheduleImpl(aZone);. H6 f, m4 C, \
try {9 l# S! a5 ]% s
Selector agentSel = new Selector(Agent.class, "agentStep", false);
# E$ O; T7 [1 J0 l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* {& w9 B6 m8 K2 r/ I & U, v+ P, k. V* T1 a
actionGroup.createActionForEach$message(list, agentSel);
0 u( A* R' V# @1 v7 U! E' P) ^1 p actionGroup.createActionTo$message(this, swarmSel);
. W& A: L# \: ^, k. U; s8 a schedule.at$createAction(0, actionGroup);
" |1 @/ T' F2 g schedule.at$createAction(1, actionGroup);
" m8 Q: P% x8 B% Y7 J schedule.at$createAction(2, actionGroup);
; x% y3 e; ]0 e- O1 v
" s+ R; h' c2 A+ x- f) n2 c" J } catch (Exception e) {1 r, E0 G$ ` Q9 W# ]
e.printStackTrace(System.err);
/ ]& {0 D/ Y" t( O5 n) i //System.out.println(e);
3 f7 h% s( a, \ ^ System.exit(1);
5 k9 h o1 d) a; X( A }
% h& ? s5 D3 q9 d2 K% `3 u- s4 }' `7 k: b, @- Z2 F2 u
" u3 u4 f: h, y& I) I9 X
}& ~3 U8 l- E: J
8 y0 r3 b" m+ V; }; t
private void swarmSetp() {: D% \" i# k& a7 b. p
list.addLast(new Agent(Id));3 s" T8 q" T% ?0 C6 [0 k+ P t" n
Id++;
' v8 z3 Z& p' i( e }
; v& p) V o: \# o0 I
7 P# } i) Y( Q; S$ \ public Activity activateIn(Swarm context) {6 P; z7 w1 @8 s% s. \- N
super.activateIn(context);1 D+ d0 Q) D# k I
schedule.activateIn(this);0 ?5 _# C- j. [4 v# a6 l I
return getActivity();% g5 C" P' r0 K$ w2 U: N
}
2 i7 U- E9 Y6 b$ v2 k* W8 S8 T' Y4 k: s/ s$ q
public static void main(String[] args) {1 g5 z& T+ u9 ~5 @8 G; ? h
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 k$ B. \2 P7 t* O4 I1 [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 W2 J6 j; W- E$ | swarms.buildObjects();
" C% l0 b" b3 r$ n/ @6 g swarms.buildActions(); Y+ q Y; B1 s% V: N5 j
swarms.activateIn(null).run();" ]+ |7 ^* H0 F- V- ~9 M
}% J" x+ ~/ D; k! J
+ A0 w& u$ M: w" W: a! v- _} |
|