|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 e/ W# T0 y, V- \0 U
1 b, T4 J! I' [, X4 y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 i5 u( g, _9 P! Y# q3 ?. p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( n9 V- F6 d4 @% ]8 _3 R: m
swarm.SignatureNotFoundException0 G& U2 Z) r ~5 s
at swarm.Selector.<init>(Selector.java:76)
' X3 D' m- \4 H" i7 d0 P9 U& ^+ p' A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 L* `/ M3 K5 O$ ?
at ActionGroupDemo.main(ActionGroupDemo.java:67): U* ]: t! w" H0 ?. F5 o
( }; {" p$ I& p3 l
8 V. N* y9 U, w6 D! S
import swarm.objectbase.SwarmImpl;
# I4 v: t% g) [3 ?9 Timport swarm.objectbase.Swarm;
0 _1 c- J1 [$ |/ N3 u( g1 v3 uimport swarm.activity.ScheduleImpl;
6 m0 ?0 E3 E/ W M9 z5 q- simport swarm.activity.Activity; n8 x3 [- M; P* o7 {
import swarm.activity.ActionGroupImpl;- x& b' Q% [( O. i8 ]* L7 e
import swarm.collections.ListImpl;
8 U {7 q) E9 c3 \4 Q/ oimport swarm.defobj.Zone; " \ Q, z5 G7 ]
import swarm.Globals;6 V4 G! \. d& I0 N% W- d& ~
import swarm.Selector;- x- H2 G4 i2 u$ n
import swarm.activity.ActionGroup; 0 G5 h1 _: B9 K8 x5 {% v5 W
class Agent {) V! {' m8 n$ \
char id;
$ b, F% J+ F8 A0 o* s
; a3 I9 `8 c' A6 z+ l Agent(char id) {- {/ R) x D0 j- r+ A! s) Y; t! b
this.id = id;) l. U# `/ B7 N1 {) v. I
}; Z8 @+ z, W2 d2 \( S: O$ b1 e0 _
% \3 X. `% R6 E8 V+ i public void agentStep() {, ^5 m# N* W4 j' n
System.out.println(id + ":" + Globals.env.getCurrentTime());: j' t0 |- Y5 F: ]. |5 }
}
5 q7 C5 A7 W o' K5 c}% r0 R8 k, i9 u9 v4 ^
6 Z2 @2 O0 X1 _2 B* Q
public class ActionGroupDemo extends SwarmImpl {
1 w2 T# Y( T2 E" i! s+ q/ x! l ScheduleImpl schedule;% s* R4 G, P' X6 \ k& s
ActionGroupImpl actionGroup;
4 z" i2 ?# |6 } ListImpl list;, A1 G; ~" y# T' K% h. w; ?
char Id = 'a';
+ O$ r) `$ c* k y: \0 ^# \ ^ D# V2 B
! Q5 D8 r6 g" O3 N/ Y ActionGroupDemo(Zone aZone) {
% {/ D0 p' j5 L( j super(aZone);$ a! c# w/ X8 K1 z3 e' i+ ` n
list = new ListImpl(aZone);+ j5 P: Y" m& h% g7 x& X
swarmSetp();% W# ]5 l2 S2 f( m( b5 n
actionGroup = new ActionGroupImpl(aZone);# I& U" U7 }$ s# e6 l
schedule = new ScheduleImpl(aZone);
, p+ L4 q. i# E7 \ try {( P% k* s3 F# r3 }' ?! \6 j' _
Selector agentSel = new Selector(Agent.class, "agentStep", false);) X$ K0 @- q7 B# k N& v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, \: q. b% _/ _3 u& m7 k6 H0 f 2 |/ d* b0 Z. w, F) q% J$ n# J
actionGroup.createActionForEach$message(list, agentSel);6 _ {8 b/ l8 l& ~
actionGroup.createActionTo$message(this, swarmSel);
! F5 {1 b) G5 Z E: c1 n- ~ i schedule.at$createAction(0, actionGroup);$ U2 k) U0 q( B2 ?2 q# B6 D
schedule.at$createAction(1, actionGroup);
' q6 d, ?2 R( }3 Z% S# i schedule.at$createAction(2, actionGroup);& Y5 F2 T# k4 R6 u
) |8 E' _( ?( n! ~ } catch (Exception e) {
+ Q* h) Z& I( t- I2 B% k! h* M e.printStackTrace(System.err);- Y& d1 X& {! G# U6 ~
//System.out.println(e);, e, n F! M% h
System.exit(1);: i- f- c: O' `# A
}0 c5 I+ [1 d' w6 u1 i; s
. u$ \0 z' S% ?: ], ^6 W
( C. _- c$ S( z/ k% d! f }1 [- T9 N( E' c+ i
* p/ j. p: I1 `) h2 g- j
private void swarmSetp() {6 P4 a& ^% j |6 N; X
list.addLast(new Agent(Id));
7 d* J& v7 `' q u2 d. f/ s Id++;
1 Y5 Y3 w! r/ H( R- p7 [ }! l" i" Y2 b- L+ V
$ }! O" W& F/ l. C8 w1 x$ u" M
public Activity activateIn(Swarm context) {
" J$ |4 l: G \; E super.activateIn(context);6 X3 Z( t- g/ ?4 A
schedule.activateIn(this);
' {& I0 J5 O& e# x$ u return getActivity();
2 W3 W' I: ^# } X, G5 [ }" C3 [" m) d- R9 `) ?" A% D
+ F5 j! ^8 n; X' c' x- ^
public static void main(String[] args) {! w4 |* A$ R3 D5 ^1 ^9 G; ^
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- B' d. p7 [( Q% | M- w/ B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 a8 w T2 _( D! j4 c swarms.buildObjects();2 M( S. `- N& R- G
swarms.buildActions();
1 p1 [6 o/ r! b3 l8 P swarms.activateIn(null).run();! v. O( x" z7 ?
}
6 P# s7 t8 A% Q, n
6 k' }. z' y$ g0 e} |
|