|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ O! E- Z: C M$ }% l" [
+ v0 w# n9 D3 C; ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# h3 i! L! @. d4 D8 U6 D( x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 F0 D. |2 C" S' M9 P7 T* oswarm.SignatureNotFoundException. h* R- R- t8 g1 h
at swarm.Selector.<init>(Selector.java:76)
& ]9 k' I& ?* y+ j$ i* H at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ v5 s- N; W2 v$ c at ActionGroupDemo.main(ActionGroupDemo.java:67)
o* @+ B& L& ^0 o0 Q& n. P2 | O/ E+ J0 X9 a5 g7 N
% ~) N0 r: u! {" Z7 q' Jimport swarm.objectbase.SwarmImpl;
/ Z3 [: [1 Q- n, ?( {: D, M' `import swarm.objectbase.Swarm;
( |- Y8 ] ^4 _# K$ m, pimport swarm.activity.ScheduleImpl;* A- S) D; G: C3 V; }; A
import swarm.activity.Activity;
/ H% ]5 y& T) N- _9 ]" v0 f; |import swarm.activity.ActionGroupImpl;
9 [" ?0 H$ c3 O3 l* Iimport swarm.collections.ListImpl;" \4 a& W- z. G# d9 N2 D
import swarm.defobj.Zone; % D3 |1 c0 e2 p- R' [
import swarm.Globals;" B$ I" H% b" g9 u( x
import swarm.Selector;
" K6 M, d0 h- r3 M: E+ X yimport swarm.activity.ActionGroup; 0 B% g, x# E, d7 y" X
class Agent {
! ?( V" k6 F/ G, `8 \ char id;7 R7 ^- l8 _3 e0 P8 X2 Y
' V: K( W- q/ C2 l; h0 j5 Z
Agent(char id) {
8 P1 m- Q8 P6 B$ J6 [ this.id = id; e# Z7 w4 r0 r- x7 B, z4 A: Q0 `
}
0 e% l7 ^6 ]2 w* m; ~6 x% q2 u+ f2 w( s: X: D
public void agentStep() {# U7 T5 _/ G( M* G: N( i0 o, k
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 h+ x! f# X- [2 S% l$ D }
$ c" z5 P4 J' \5 m# e$ d! z; u}' }* q$ c+ N% m% M0 p. a0 j9 D
1 C" P2 ^% `, u+ m2 Q: V. `$ |; Epublic class ActionGroupDemo extends SwarmImpl {* Y8 ^. R; r' o& ?( ~( a1 ~
ScheduleImpl schedule;
: C) C( B L. @2 n/ q. t# ~ ActionGroupImpl actionGroup;
, r& f# A" W- J ListImpl list;
/ ~& F$ f" C; S9 _3 \! @0 m1 a char Id = 'a';, h* o9 p* f1 R: I0 G1 U* [
3 I6 F* z! T0 F* C( u$ A
ActionGroupDemo(Zone aZone) {! a: S! N' ?( F: }4 }+ m
super(aZone);1 \8 j$ g9 j# X- v( t: K. k
list = new ListImpl(aZone);
9 D' J% E3 D' \3 z! Z/ z7 L, O3 W swarmSetp();
7 A* e( D8 k0 s7 i5 v actionGroup = new ActionGroupImpl(aZone);- w. ], @1 X1 j+ ?- n7 Q" p
schedule = new ScheduleImpl(aZone);6 K/ o. d5 }* T e8 o2 v! U7 A
try {, Y, R) z6 D: ~5 l* }/ B
Selector agentSel = new Selector(Agent.class, "agentStep", false);
. L/ b! s" R6 q& W. ?# j# i% U Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 j" U! E- h( g( s) y+ l) h
, O5 ^( x; H: G3 \7 M5 h actionGroup.createActionForEach$message(list, agentSel);
% i( j0 E5 G- D) Z6 ^, s f8 h actionGroup.createActionTo$message(this, swarmSel);
" W) H4 [8 O7 x! C0 h d schedule.at$createAction(0, actionGroup);
" M$ C/ }. O( O I& r) o; @ u schedule.at$createAction(1, actionGroup);2 |. [' e/ s; w2 j K S L
schedule.at$createAction(2, actionGroup);' D# k. n4 L8 C, i: p* ^% J3 @ ?
K4 R. l$ d1 p5 l! t5 g } catch (Exception e) {, ^- m' f) h* o
e.printStackTrace(System.err);
6 {# O( M" R" x0 `2 A //System.out.println(e);8 o% @& z7 K7 ^- k; F
System.exit(1);! w; p/ @% e! C& t1 X; l' G
}4 q0 b0 t1 m% N8 h% ~0 J
9 `0 m# B4 @" s
" V- @1 t6 t3 V. |5 O( \+ Z$ k }8 ]3 N5 X) M! R! |5 f) a& _
" N; m# G4 H! c6 d/ [ private void swarmSetp() {
0 v \9 ]" C2 U) _* V! Q4 C3 I list.addLast(new Agent(Id));
" W) j9 n# c6 W* ]4 s& q0 m Id++;% e7 M8 e) D1 x
}2 n" C; U6 v0 J. g5 \/ K- R
& B5 m% B& V8 | public Activity activateIn(Swarm context) {5 V _; l& o+ f% |; s3 z4 k& d0 J
super.activateIn(context);8 h/ ~: b. f# n p0 L
schedule.activateIn(this);6 @2 n9 H, [ `) I
return getActivity();2 V7 j0 ~$ }: p. L
}
3 }% P* A) H5 V; L6 R) Z1 v3 K9 S$ N6 e' T7 t
public static void main(String[] args) {" K T/ d$ c! B) G! E
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% x2 T8 C4 h4 _% F) f- F Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) N4 [" o% f9 p. s# k swarms.buildObjects();
; z1 z7 A) C- P* a0 o1 a( J0 X swarms.buildActions();( K y0 N/ n7 x& R' L4 h
swarms.activateIn(null).run();
! h" Q9 Y2 t$ f) N3 u }1 {' Q/ o6 t# k5 n) A; N
1 P/ x$ k2 E5 n2 ]; ~7 H, v8 S} |
|