|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 j4 X b* S# n8 }+ e) d" K3 J! F9 {8 L+ ]& s, S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ G K0 g3 {% ]( S" q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 D; E9 R9 o8 C! u8 W# h+ V/ L1 vswarm.SignatureNotFoundException& S9 U, f3 ~3 H# b" d
at swarm.Selector.<init>(Selector.java:76)8 l5 j5 t8 ^3 z* g" O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 t6 j) e3 Y2 p- r3 ?! x at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 T2 t4 F/ p, O, Y: p( N8 ?7 f' i; c- l9 q# \" D
2 D& e* @6 s# D. j G a9 Fimport swarm.objectbase.SwarmImpl;
[0 i1 i6 R/ ] G5 K; j! k; Uimport swarm.objectbase.Swarm;
, S% ]0 F/ }6 R1 ~6 P: fimport swarm.activity.ScheduleImpl;
3 c2 y ?. X; V3 X9 ~) simport swarm.activity.Activity;# b9 \# Y; a j ~
import swarm.activity.ActionGroupImpl;1 O! a% C& M! i9 V% t, n, l
import swarm.collections.ListImpl;
+ J4 q1 v! k- vimport swarm.defobj.Zone; # c0 Q% Y! `1 C9 c
import swarm.Globals;4 l# k w% ~. g- f' Y
import swarm.Selector;# J5 T; }; {: B# H m" Y1 b7 K
import swarm.activity.ActionGroup; 4 V) C( L! S! k1 R
class Agent {; x0 F" h) v' y7 p
char id;
- x. F H/ c5 |! q4 n2 {0 Z# F2 [: ^* K9 b8 Z$ e6 O( U& Z& i
Agent(char id) {8 s5 m/ i) s! L: r4 O
this.id = id; F& @! l: Q# b: l* r6 r
}
" f: y: z, h9 m. I7 y% ]$ U. k% y; M
public void agentStep() {
4 V* o( r- Q: N. l; G3 x- I System.out.println(id + ":" + Globals.env.getCurrentTime());
! \$ c/ ?: Q3 a5 F, d d2 k+ L( P }8 [7 V( i/ ?7 A
} K9 h1 B9 x2 C" j9 k _4 v* E
9 F. p; V r1 [; ]5 `4 t
public class ActionGroupDemo extends SwarmImpl {
- R9 k( |0 C( u! U; e9 g( Y ScheduleImpl schedule;* s- E& H* V& X
ActionGroupImpl actionGroup;/ x1 I* [" P8 P8 K4 U3 t# ^
ListImpl list;
$ ?: I$ D+ n( Q7 m9 e. H& p char Id = 'a';
8 q: v5 M' c f1 ` |
$ E2 Q B, B, W' X7 k o ActionGroupDemo(Zone aZone) {
0 J: v3 V: I( c- v# j+ [ ^, B super(aZone);$ t4 P! t3 A Z& ]' K7 S
list = new ListImpl(aZone);
* D* r! [, m F1 w1 P S swarmSetp();+ j: j- }( D: t( S5 A1 p! Q5 z
actionGroup = new ActionGroupImpl(aZone);
6 h2 Q% `' M0 C- M$ |. y0 D schedule = new ScheduleImpl(aZone);
& s( P: P( H7 f2 Z- h/ Z# o try {
( {9 R. \9 t h7 v& C$ Y! I0 t Selector agentSel = new Selector(Agent.class, "agentStep", false);
* [6 X0 n" ]% T( M2 T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 A# l7 y* e! }$ t7 j# T9 m9 v! n 6 p t; f+ f" C
actionGroup.createActionForEach$message(list, agentSel);. N: `8 J5 }6 S
actionGroup.createActionTo$message(this, swarmSel);5 u# {- M4 h) L; u: Q+ s
schedule.at$createAction(0, actionGroup);+ { J0 o5 }7 B9 r0 Q
schedule.at$createAction(1, actionGroup);
% c8 I3 ]& P7 E5 {/ }7 V$ v schedule.at$createAction(2, actionGroup);6 `% k& A1 X3 ~, o2 [2 F: G) r u
0 i! ~9 C, j3 n6 a } catch (Exception e) {9 |2 E* x" F: X/ Q" C$ [
e.printStackTrace(System.err);9 [( \3 q9 x H' h' V
//System.out.println(e);9 w, Z4 V, _" n. @7 @4 ?
System.exit(1);# {; Q* `4 T2 i9 s- V, o
}
* f/ @7 T2 Y& s! {9 j- n/ f% S
1 @% h2 |! L% i- F8 ~; [/ y& u, @# H2 U8 d* u2 G! C- t2 s& w
}
& o2 g% ]& r' l: N. y
) Q& z& k7 s& q+ ^+ t$ A! J a private void swarmSetp() {
* J% {$ u, P% k0 d# \2 R8 }, m) D list.addLast(new Agent(Id));
+ E3 b4 O. E+ D8 r: X4 ~$ x Id++;; R; W0 O% X# g6 J* D
}
, Z: z9 ^' q @: w0 J9 [/ T$ U+ O1 @$ s3 f# A7 J( U
public Activity activateIn(Swarm context) {
+ N7 X+ l: G8 E, b super.activateIn(context);8 b5 X) [: w. H6 x( u9 x
schedule.activateIn(this);
. e3 Q! \' X6 Q% H# | return getActivity();* h1 q$ \+ t. s+ \* I
}
3 Q" f1 z6 }. n9 c
+ Q4 P5 j, J0 Q0 ^* y public static void main(String[] args) {. h a5 R5 [ e( c, X; ~) y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 T; s! d1 N6 [ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 \# L K" J6 J! J5 g, C/ U swarms.buildObjects();
, J/ T$ |; ?6 w$ ` swarms.buildActions();
9 V4 }' l9 R) x0 }+ h; B swarms.activateIn(null).run();% O/ ^* G S W" `
}+ I5 ?& g# R$ c$ G
* q0 m4 ?( H0 ]- q8 S
} |
|