|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * o5 }& v. `% ~. l! W, K
$ u4 D* @4 l, g0 M. }/ Z( b# B. t本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. T* ]* ], Q6 X- I0 u2 W/ y/ `1 R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 l0 }( v* o1 M# _* P8 L
swarm.SignatureNotFoundException/ v& _( g( k8 P5 c6 P
at swarm.Selector.<init>(Selector.java:76)
1 y# j [; T$ e1 {) z w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% L# B( ?2 Y f) J# R# n8 I) @5 A at ActionGroupDemo.main(ActionGroupDemo.java:67)
* c. k( |3 d6 w a( B7 s, t- C i& A# v& B. {( |% C6 ~: L
, a6 K7 M1 G( N% `
import swarm.objectbase.SwarmImpl;
0 s$ R* A1 |' F" x9 g" @import swarm.objectbase.Swarm;
# }1 I2 o: P+ ^1 z/ fimport swarm.activity.ScheduleImpl;. J5 W$ K2 b2 G0 f7 m% @: l
import swarm.activity.Activity;
: l( x! r( S( L5 F" kimport swarm.activity.ActionGroupImpl;
* q3 k& H" D6 p' C5 w4 H8 {import swarm.collections.ListImpl;3 r J) T, ?/ V9 d8 ]
import swarm.defobj.Zone;
0 @ {/ c. d" x' C5 W+ {6 Jimport swarm.Globals;1 s+ c) C1 F' y6 B2 J
import swarm.Selector;1 t+ G" s, B; ]- W- ]8 M; {
import swarm.activity.ActionGroup;
- t1 y7 g3 j- E9 `; H1 Tclass Agent {2 O5 N' `" J$ [' H& ~% M) k
char id;
x! H3 N0 ~" y, y( m
+ L7 J7 F- Z; L4 U Agent(char id) {
5 _; o L$ W3 X& X- L9 ` this.id = id;
! K" _6 h9 s6 z* q* x }
% y1 ]& W4 X8 _+ w2 n; C! ^5 r: d8 E( b; o- C( o7 Z- E0 m
public void agentStep() {8 I2 E8 s4 A8 w. Z! V
System.out.println(id + ":" + Globals.env.getCurrentTime());
& r' H/ ?- T+ c$ b& S8 S, s. T }
* X& @: H9 i8 U6 ]9 s. d# e; i}
, q1 j; O4 B& ?' Y2 v) q2 w
8 N( E- b9 `* K+ H2 E) `% u9 X9 q1 Lpublic class ActionGroupDemo extends SwarmImpl {
: r+ c3 M. w3 \+ I5 w7 l2 P; P ScheduleImpl schedule;
0 h4 w8 ?# K0 W; T ActionGroupImpl actionGroup;
8 Y3 l( I; u5 P( c' ^ ListImpl list;
1 G) \7 ^" h; I1 c" j3 K) Y char Id = 'a';
# `& \/ X P1 Y* K0 t, g
3 `( W. k7 h" c- L& s/ L& e ActionGroupDemo(Zone aZone) {
* F+ `' i6 w& L3 N1 G- u super(aZone);
" r _. @/ [2 N/ @ list = new ListImpl(aZone);& P* a1 c- n0 h2 B
swarmSetp();
# E2 r/ a( M# R3 @# H actionGroup = new ActionGroupImpl(aZone);; z/ v; {. l- ?$ T8 Q& L4 |# K4 ~: Y
schedule = new ScheduleImpl(aZone);/ y- \2 G/ D3 c5 `
try {
2 h( _) M; B0 h6 Q y) A! m Selector agentSel = new Selector(Agent.class, "agentStep", false);# m) g9 d& a! L+ V4 [
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, E4 E& |; X; q+ G# T
1 {, g8 S" c/ H2 [9 d actionGroup.createActionForEach$message(list, agentSel);
2 z: L/ B( i0 y actionGroup.createActionTo$message(this, swarmSel); M4 y4 y `+ E' f0 s/ M9 H" ^4 M( i
schedule.at$createAction(0, actionGroup);% T& V) r/ f6 J/ I8 D3 U+ N7 _9 @1 C
schedule.at$createAction(1, actionGroup);
2 r4 F1 @" P, I8 N schedule.at$createAction(2, actionGroup);8 I; Q7 B% W9 z( [+ G
% Y- u" R7 l, d, z* Z
} catch (Exception e) {& b2 J8 J n; F, W: \& V# B
e.printStackTrace(System.err);6 ^2 W' ^ n, s2 N8 A
//System.out.println(e);
, g8 @" V3 X$ c System.exit(1);
! Q y3 y! q, c; ~9 ^ ? }4 ^1 J/ c9 a: ~' O x
8 z; C0 c# U- j; k+ _) x6 s) a
, K2 g$ _, ?5 _. _3 S M }
( J. h0 T C4 A# k& Q
1 R0 l# M7 \2 c5 S& b6 S" P% f8 h4 y* e private void swarmSetp() {0 Q! H6 m0 c; u- G5 ~" ~
list.addLast(new Agent(Id));; d% e6 k& {: A1 r h& X
Id++;
& l8 Z! {$ c* f* g8 ?/ ] }( s8 ]( ~* p3 ^7 ^' {) i
$ p; V' d" T# p( H public Activity activateIn(Swarm context) {
9 O q) F7 f5 j7 [8 ]7 _ super.activateIn(context);1 ~5 s" |( j/ \2 t! i
schedule.activateIn(this);
7 J0 w, a8 B: q5 [7 [( z return getActivity();
* B) C# I: {; z$ ~2 d& { }) K# W" H+ j" r1 n. r4 `0 A
5 `, j( H" z- y" t( }
public static void main(String[] args) {3 j) t" R8 |6 d; ^* P2 [
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; ~6 g9 B$ y; V7 { Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# q/ i5 e7 ^" j( B* B8 f7 @: a
swarms.buildObjects();; V; E: w* C S
swarms.buildActions();
" g; L* {$ |! C) Y3 R2 Y swarms.activateIn(null).run();; P7 g& x7 p, K$ H& L7 T# l- x% A
}
+ O! w" @" _2 g1 @' h4 _, t4 l; z2 L6 \6 ?
} |
|