|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% l; {; v1 t. d( J8 I5 l/ v5 k( E# a( H; Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 I8 N3 w3 h1 i' ]( A# K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 v$ m$ n' S( k
swarm.SignatureNotFoundException
: d+ |! D8 [$ S, H$ q" N at swarm.Selector.<init>(Selector.java:76)- m+ h) R6 G3 w. w0 Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% C4 e m3 l! ~% M at ActionGroupDemo.main(ActionGroupDemo.java:67)
& f; m2 X3 A9 t l. h( K. x; i
: T# m& ~2 ~5 w" b. D$ q
$ D5 A9 d, x: h# Himport swarm.objectbase.SwarmImpl;1 T8 T3 A; E/ S k. T3 W6 @# Z
import swarm.objectbase.Swarm;9 S) {, B- @9 R$ B# d) m% P. l
import swarm.activity.ScheduleImpl;) d8 T: \$ K1 `) N
import swarm.activity.Activity;! |( u8 \ p3 ?. }
import swarm.activity.ActionGroupImpl;* g x. j) |8 {; ~1 [* M) G% O
import swarm.collections.ListImpl;
6 _' f! H; O Y; iimport swarm.defobj.Zone; # v. C& M& u8 G+ M. I% M
import swarm.Globals;
8 k! |! r- n; W4 S8 zimport swarm.Selector;: k6 ^/ f v1 u. M
import swarm.activity.ActionGroup; 3 _1 ^2 Z# _8 j. e
class Agent {
/ H. {( T8 l, O( k/ C: ~ char id;! A9 g# d! r. [: ?, L, m
3 L' c9 [. i1 E6 j
Agent(char id) {9 P2 k4 w% G. E" j {. M- o
this.id = id; O7 x8 k; r: L* x5 S2 f
}
, G) j c3 Q# S! s% M, i1 P5 L& { k# W, k% @. i2 z* V7 E) |
public void agentStep() {
0 W P2 _) h/ b# Y System.out.println(id + ":" + Globals.env.getCurrentTime());
$ L, u6 p" E% Y& l; x6 ^ }) \- g7 i) Y0 [5 F* P4 y
}( C/ r# ~, `6 c; X
% K3 o+ L* f% d C# Gpublic class ActionGroupDemo extends SwarmImpl {
/ u& ^/ D* R: A+ T( u9 B( u ScheduleImpl schedule;& s. p) o" b1 x/ V
ActionGroupImpl actionGroup;
1 z" P' w" T& l2 h( V/ i4 l7 L. I! N: a ListImpl list;
; F; I' s1 f4 B+ c# O( V char Id = 'a';
. a6 w7 x% W7 I' D9 I8 d6 ^9 o8 m& s1 Q; r, D5 j
ActionGroupDemo(Zone aZone) {
% G( l- ]% U) k2 k$ D5 q' ~ super(aZone);4 S5 v/ @3 Z! w# P% z
list = new ListImpl(aZone);( j/ [& I; G; F/ M5 H
swarmSetp();- I0 V y$ f( Y7 V
actionGroup = new ActionGroupImpl(aZone);
v2 G4 X4 L! G4 a- E( z1 I schedule = new ScheduleImpl(aZone);
4 N9 J7 s# J0 Z; ~4 a try { F f# A$ J6 E! R- \
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ f4 g- K9 E( m. E: j% o! v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* ]* Y w+ K" p, w
' |4 A% F# r( o ^; L- C actionGroup.createActionForEach$message(list, agentSel);( X0 { z2 ], ?- w( S8 ?
actionGroup.createActionTo$message(this, swarmSel);; A- u. j1 y2 [: f
schedule.at$createAction(0, actionGroup);: Q6 X% Y+ h5 u2 d7 M+ ^( x
schedule.at$createAction(1, actionGroup);
( _% v5 X# M9 h) V9 u. y schedule.at$createAction(2, actionGroup);
0 _; ?) Q+ @ o1 X3 N, m8 h0 r: B% H2 y% I
} catch (Exception e) {
# r- o! |. G# x" }* K0 i9 J e.printStackTrace(System.err);/ Y( d) r7 \+ Y2 f; Q. S0 m
//System.out.println(e);+ a ~+ K5 K$ m% q/ I; R! q
System.exit(1);
/ o8 }( N( b% ]' ?/ o& b. I5 O }* K+ E7 T( v3 N2 J
% W) u$ ]+ h5 m) c# \: y' z0 E( _6 M' r5 G
}; w- ]" y5 v! V% H
$ i% }- ^' B, W I, F private void swarmSetp() {0 I' i% B7 \7 r
list.addLast(new Agent(Id));
. N# f& T' `9 t v. z8 L: B* B+ q Id++;; t C: i" s! x5 u: f( P+ U! X
}, ` a0 Z: T. F, q9 U' l; N& O
% }6 J2 B. {7 C3 z7 v! p" h1 A public Activity activateIn(Swarm context) {: {0 j3 p8 c: Z
super.activateIn(context);
. D0 l( t3 |0 r% N schedule.activateIn(this);
) N/ G& H0 n3 p: y& [# X5 ~ return getActivity();3 `) `' Q- ]9 ]8 n% D( n
}
. Y* l8 h' w5 x4 j$ _- p+ W! i. Y* a5 s# |) z% B8 l' n
public static void main(String[] args) {
# ]3 V3 H3 e4 }9 g& _# m2 @ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ V8 I0 [* b' C9 B4 m
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) _5 j% f k- G: r swarms.buildObjects();
1 q* R- e- F; U) I swarms.buildActions();
7 j! F( F+ O' @4 m2 M swarms.activateIn(null).run();" n. {$ {% t6 D# b
}
( H l, O4 R1 G* m& w, }/ i; a6 M+ I9 W8 ^% v
} |
|