|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * i* V2 k( d1 k, R# L- {- u G
( x% v* l: z2 a+ ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 w5 _9 W+ t, g. T& U; k- q1 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 r- _7 c X0 I( _1 m5 _
swarm.SignatureNotFoundException+ @) z9 U9 t4 s
at swarm.Selector.<init>(Selector.java:76)
4 s4 P: x+ K% D9 J! {# ` at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 ?+ M. ~& }9 W0 n4 x7 S
at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ o9 M! ?1 S, n5 ~- @% H: E
2 m* b2 A* o7 M& x7 b- c, M% T9 U( P: E0 N" H$ n3 s( W
import swarm.objectbase.SwarmImpl;
! e7 g0 g4 M4 x" x: b7 m8 Wimport swarm.objectbase.Swarm;% F% N' ^; M# W( _
import swarm.activity.ScheduleImpl;
6 K3 H/ Z6 T4 {* i: B) x( \& uimport swarm.activity.Activity;
: g+ o' J$ z/ ?# l& B% Himport swarm.activity.ActionGroupImpl;
, j% u% r: O- B3 D7 L9 {5 _9 @import swarm.collections.ListImpl;
+ W" i3 V4 I H1 m! W$ Cimport swarm.defobj.Zone;
# k& c e; R- H, u& z( Fimport swarm.Globals;
% v; n; h W4 N8 v8 Y/ X" b; limport swarm.Selector;
7 X+ o2 g/ P' r5 m$ D6 eimport swarm.activity.ActionGroup;
6 h% T4 |0 B$ R0 {, kclass Agent {8 S( b, t _, \# T5 }9 d0 h
char id;& Y& r0 Y8 P1 S$ ] B( C% Z
7 Q' Y7 S; b. Z6 ` Agent(char id) {) J8 x! m2 m2 S$ F$ @/ F) h
this.id = id;
* W* E$ r( r U' c9 j' ~ }
3 F9 X8 D) d2 @) p2 a F6 H7 `3 ]6 |" P* y7 c
public void agentStep() {
' O* J% s q2 t3 v% U System.out.println(id + ":" + Globals.env.getCurrentTime());
9 T" \8 w9 q( W4 s* Y% ] }6 T+ K; f+ V3 L# j3 W
}4 ~; w2 U3 ?; \! Z! N+ @! ^, R
+ I m! [* Y; @, K6 p; N- ` N
public class ActionGroupDemo extends SwarmImpl {( e) @1 l. N& U& [8 e8 }; d
ScheduleImpl schedule;
& w2 U6 {: S' L4 K6 F% W0 [! g ActionGroupImpl actionGroup;( @/ p* Q& \! H& ~" A8 M1 [# G! J
ListImpl list;5 k/ D3 w+ j7 N4 b" y
char Id = 'a';
4 c5 K) A0 H# \$ j" P3 }2 S1 ~5 Y6 V3 ]! b
ActionGroupDemo(Zone aZone) {
0 ?: p" h( t! `+ g! ~5 H& _ super(aZone);
! o) k; R( M+ D list = new ListImpl(aZone);; ^% ~2 \6 n) ?$ c2 R/ h% S5 C
swarmSetp();
; S Q/ U' Q0 g6 n: _5 x# M- b# @/ ? actionGroup = new ActionGroupImpl(aZone);
0 A: e- Y' ?- K, ?' G) O+ K schedule = new ScheduleImpl(aZone);+ _7 x0 L( T6 L$ A9 ?: p
try {
" A7 d/ ^* R) E% j- w4 d. J Selector agentSel = new Selector(Agent.class, "agentStep", false);& m5 r! B/ ?/ p
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 l* W6 C4 k: }: W) Q
! @9 _- h" O3 V( O% A* r; U
actionGroup.createActionForEach$message(list, agentSel);
4 a, X( D, S+ w: p1 s; X$ y actionGroup.createActionTo$message(this, swarmSel);$ `( ?2 v; p% s' v9 I; z
schedule.at$createAction(0, actionGroup);5 I2 R4 X3 k& l% h6 E; F6 o
schedule.at$createAction(1, actionGroup);
0 z" h1 f* U0 O, R" N( _& r schedule.at$createAction(2, actionGroup);9 @2 E- M( e' W0 F5 _) `2 F, F
& V+ T9 `' W* D
} catch (Exception e) {, j4 \+ ?5 {* C% I/ i- e
e.printStackTrace(System.err);
# z! U V, o: i8 t8 Z) q8 j. q; y# I //System.out.println(e);3 }* T7 q& f1 L/ w5 L& T, _& W
System.exit(1);/ E9 i" _, k/ U" a. N0 {7 H
}0 b7 i8 |; [2 g! O& ~1 x
5 n7 z( s5 s6 ?6 n* f7 ^7 R; N2 S$ t: \$ Q: ^0 O, C) m- B. Z0 `/ D% @( z
}5 o7 O; x$ [& T& A* y
- B: i/ a7 K/ c/ c
private void swarmSetp() {
9 U2 r- ^5 h4 A- D3 _" A list.addLast(new Agent(Id));
) e2 F6 \+ E4 f# g: F Id++;1 X- M7 ]9 Z* P" N% a* X3 Q
}
3 x4 y" c9 W6 U7 W# L" m: _; E5 ~
public Activity activateIn(Swarm context) {2 n2 M& T3 k: k- r' g
super.activateIn(context);; P1 R8 N( i; G3 b. W4 [8 q$ o
schedule.activateIn(this);& m( B, R. c* ?7 }5 u
return getActivity();
7 n, W& h5 S7 I) J% S3 ^! e }' w3 s) R" P" N+ p/ a
9 |1 ~2 \2 f5 W7 o1 [; b
public static void main(String[] args) {: {1 \ d5 t9 H, r! Z% O1 S
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* c7 l. l. W) b Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ p1 J! F4 o( [( k _9 A swarms.buildObjects();
- Q/ o# \% c( s& _2 K, u. @7 J swarms.buildActions();3 q8 y$ ~) A K1 G( e7 T
swarms.activateIn(null).run();
; S3 T& n7 X) P; p6 G, Y9 f) Y' u }
$ }3 ~0 [3 K4 z- X! }
; C2 D/ h$ v# j" @! l} |
|