|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , B* Q! a, x" z$ y
% f. m+ }1 d7 ~. y$ h5 s {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 {& K' X* ^ j: w- s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 ^9 E/ C! g( M, @swarm.SignatureNotFoundException @4 m5 i {. |" e, G
at swarm.Selector.<init>(Selector.java:76)9 \0 t# ^, a- j9 m
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! \' P. @; b, {# |! ?2 ?! d+ Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)' Q) j8 K0 A; P) [
; S2 @; Y) I. |; B6 i; @& @
8 Q3 ] n7 l9 r$ T" S$ qimport swarm.objectbase.SwarmImpl;3 g7 R6 p: ]$ O! W
import swarm.objectbase.Swarm;
5 A0 t: t I6 x5 v: ^' j) [import swarm.activity.ScheduleImpl;+ P$ D0 Q3 I6 o* C0 U5 G# q
import swarm.activity.Activity;
+ G, ^4 R# _. [. Timport swarm.activity.ActionGroupImpl;
j' X; |5 d+ _( F. n1 mimport swarm.collections.ListImpl;5 H. ^$ v7 b" x# b S5 b9 s' u
import swarm.defobj.Zone;
; p& _1 X4 x2 `( Uimport swarm.Globals;
! p6 [7 @0 B( w, u9 ?% ~import swarm.Selector;" U' Y% c# |) r8 g0 A- y0 v- n- q
import swarm.activity.ActionGroup; , {" p% d; n5 I2 R1 G" I
class Agent {9 J, s N1 H* m- n# _
char id;1 L; ^7 P+ p, G. b
3 o* \! u4 p( }' V" _9 G+ M! N3 \
Agent(char id) {
$ G1 u2 S* h! D" I9 V this.id = id;5 C8 c% @) n; |$ g# `0 I1 {
}
0 `2 g: w* c9 x& t, H/ ?' N% }# R1 k7 h; Q! e
public void agentStep() {" p. \$ I T) U% u
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 N; h3 O9 M5 O A% ?$ T }
* P$ H" E9 `1 M}
9 O- {* ?" t" m* B# ^1 D3 i0 d3 _' E5 |7 |$ O+ p9 _4 ?% P
public class ActionGroupDemo extends SwarmImpl {- {* e! ]; ?* ~/ n" f
ScheduleImpl schedule;
* {: h2 o$ H+ u' F8 S+ z) w ActionGroupImpl actionGroup;6 t# P/ G/ O# D
ListImpl list;
( P2 K1 G4 l- B+ |2 i% f char Id = 'a';
( k+ X1 F0 P$ U3 b# R$ \9 d
8 B! p0 `, n) @2 R5 S; V ActionGroupDemo(Zone aZone) {# D) i& D% E1 o6 L3 o7 ?* K
super(aZone);6 ?0 h/ w5 o8 W; K8 M; N# Q |
list = new ListImpl(aZone);
5 J+ F; O8 A7 ~ swarmSetp();1 F _4 }3 o- ^* _; e# ^! p: `
actionGroup = new ActionGroupImpl(aZone);
4 o7 J3 c3 h- G+ q1 U/ I schedule = new ScheduleImpl(aZone);
4 `0 j/ A. w5 ] try {
+ X1 b7 u, `* l6 T! \ Selector agentSel = new Selector(Agent.class, "agentStep", false);) n: j- X Q5 Y7 h: M# n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ C. _0 p# R' O9 F. @; a& q, r * U5 P- R( D( K \& t' l3 k$ z
actionGroup.createActionForEach$message(list, agentSel);
! f$ P- K1 D$ y actionGroup.createActionTo$message(this, swarmSel);
& ^; E! _" \7 z! a schedule.at$createAction(0, actionGroup);% O+ R1 N& X4 B9 Q9 D( G. o
schedule.at$createAction(1, actionGroup);3 w' J9 y3 s, F9 [$ x
schedule.at$createAction(2, actionGroup);
7 Q" ^+ T* y, K x" w
. s7 Y! T& x) j } catch (Exception e) {% |3 Q, z/ ~0 k( D+ j4 T
e.printStackTrace(System.err);
' z9 I5 g, a6 U9 N! |" u //System.out.println(e);, N* `! J" }6 z: N
System.exit(1);
9 T# D1 j% T8 ]- ~. z. a: ?" N+ M. i }
* c( `) W( y# z3 r6 q5 f6 i6 `
8 G8 k q1 g, c4 h' o; _
}
8 o0 ]( h6 o$ y( p% B- g, x/ l$ H) Z- i& ~, } l& @1 J
private void swarmSetp() { L$ V( D- ]5 }
list.addLast(new Agent(Id));
* C# m# j ?9 t/ ^9 U% t( w5 G0 I9 B Id++;) g2 F0 c% m$ J# |. E) K1 L
}
' m# P; a' c' Z% @
5 b5 Q: c' Q6 b' w9 f% N+ a public Activity activateIn(Swarm context) {& g& X- ^( g, f r
super.activateIn(context);
0 w3 q" ?; X# g3 |# \; Q schedule.activateIn(this);- |9 {/ i4 K) k8 ?$ F/ P: m
return getActivity();
! _/ K* J8 g' y% J+ v9 |, W }
# z3 s( }$ q0 c# Y0 ?2 B
4 z2 Z2 Z8 z1 C public static void main(String[] args) {
* w+ o7 J& y6 {2 _5 D" H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" v" [! s% b; n! Y; ^$ ~ \ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" X+ Z, @* @* @- R) U: ^8 O2 |
swarms.buildObjects();9 |/ ~ y. \0 T
swarms.buildActions();; }' a5 R. p" U5 g8 z- U' `3 ^) ]. v8 c
swarms.activateIn(null).run();
' t4 @2 x; P. [, @$ p/ j9 r }" a! L% q5 l0 H* T. f# r5 F. Z
/ M! u( l. |" m' O; z4 h+ L
} |
|