|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 h. _4 _) g7 J/ E& K3 O" u
9 J' a& J: q {/ m/ \" ]+ E1 l, t. ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* }& q# N( r9 S2 ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ y8 e$ B9 D' |swarm.SignatureNotFoundException4 r4 Q6 ]& N4 |( @
at swarm.Selector.<init>(Selector.java:76), h0 [8 |: k( B1 f: ^! M2 b, \9 A
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 K6 Z* ] N0 V7 e at ActionGroupDemo.main(ActionGroupDemo.java:67)0 ^2 D- `4 }; Q% H/ S; @7 l5 ` v
) O% U1 M" r. f& I y+ _& v: c) o
. _% N5 V& k- S* @( ?import swarm.objectbase.SwarmImpl;: _1 a( y ^& E6 [% i7 U
import swarm.objectbase.Swarm;
4 A' b2 G( k/ {* S- |/ ximport swarm.activity.ScheduleImpl;
( G4 M0 S* ~# F, G* mimport swarm.activity.Activity;
$ Q5 o' s& b0 J% Q- P1 i5 M0 qimport swarm.activity.ActionGroupImpl;8 j9 ^) ~. E, o! l3 ]
import swarm.collections.ListImpl;6 E# K! h1 c3 @4 _/ Y
import swarm.defobj.Zone;
- ]2 E* \# A5 P9 }) S- D: `. Mimport swarm.Globals;
: }9 J$ q$ h- k7 vimport swarm.Selector;: ]' C0 f) s1 f5 b( f; i
import swarm.activity.ActionGroup; 1 p: g6 y+ w% j2 l& a( x. W
class Agent {
1 W+ o3 [+ N @' m* A- I. K3 r char id;
) f/ o% m. P7 l7 l, H5 y! {2 q9 m& X8 u$ ]* U% q
Agent(char id) {0 i" ?2 q! b# w9 ?6 _5 F
this.id = id;. r% p( ]( l2 Z; B. I
}" ~$ L- J/ ]. s# Q
. v0 Z* B. P' n# F( q: B" d2 g public void agentStep() {0 g' y) B" j/ u3 O) \5 i1 c( G
System.out.println(id + ":" + Globals.env.getCurrentTime());
' }6 o3 q* [- S }* \# D$ b/ L! _/ f9 k" n! L9 ?
}! l4 r% m* A. b) e" Z9 q5 } P
( ]# m& p) i) `- u( ]1 d! j- C
public class ActionGroupDemo extends SwarmImpl {
* @9 z4 ^7 I3 {) ]! C1 _ ScheduleImpl schedule;. G, }0 [2 B1 B1 X4 }1 K
ActionGroupImpl actionGroup;3 k, n, m* @( }4 L. y4 }. t7 ?" L# O! d' g i
ListImpl list;; z# J. t* q+ ]. n( ^7 R" U8 t
char Id = 'a';
$ h" n8 s R1 H0 F2 S, l+ i0 L4 {% s
$ m2 Y- M- I: j: \ ActionGroupDemo(Zone aZone) {
, d/ F7 \! V3 r# i super(aZone);6 R6 }+ h" Q& q
list = new ListImpl(aZone);
; I0 L% O8 V4 w0 M, m/ w; z; A swarmSetp();, _/ j/ a* C) Y+ w4 f1 F
actionGroup = new ActionGroupImpl(aZone);
2 F" ~0 ]& h! ^ schedule = new ScheduleImpl(aZone);
x* s6 u2 Z5 x% I try {7 D( h$ e9 e8 s6 A! t
Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ f7 f# R7 H3 i7 t8 d Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ N3 V4 i9 x" `! n
6 @% h: l: J, K# m5 @2 q actionGroup.createActionForEach$message(list, agentSel);
$ u+ ]+ D% D3 t5 C9 l5 F actionGroup.createActionTo$message(this, swarmSel);/ r% p0 ]2 L. N p' z
schedule.at$createAction(0, actionGroup);
. |2 v1 x; q; z R7 { schedule.at$createAction(1, actionGroup);7 y$ O j9 }) h$ a( x
schedule.at$createAction(2, actionGroup);
+ {, o& j/ K# S) b8 n) f+ T
% o+ y9 D5 a% [7 y+ T } catch (Exception e) {
% k3 I- [# L2 }& G; s7 T e.printStackTrace(System.err);: S% E, O( C+ u$ _6 p
//System.out.println(e);
, G" Z6 k: I# W0 b- ` System.exit(1);
6 s t# ^2 F. {- ~ }
& K: O# o: r; X* t
" R' }/ D& d7 R6 A
3 `# S; q7 r! g8 D; }) c1 ^1 a- e1 V }
: g) ]4 i; H0 X; Z& }, g& o3 u7 J8 g+ f) E" o: F" j' O
private void swarmSetp() {
* D& V) `* c2 S list.addLast(new Agent(Id));5 a% ]: w% v6 m. `* V' t' S+ T
Id++;
1 M. T3 G" q& a2 U( g' ]& j, W1 J }7 s0 E$ T9 U; L! {5 r0 y
9 _3 K3 U$ r8 |; U public Activity activateIn(Swarm context) {
I& h4 @, w" X7 i super.activateIn(context);/ X% C+ z. G2 r. W, Q: p9 o3 l
schedule.activateIn(this);
# g* |$ M, O. r3 v return getActivity();
g$ s" \: L9 u }
. b, I* N# v0 J v' P$ C5 R5 k7 @% U+ y0 ?7 `
public static void main(String[] args) {$ ~4 H5 y0 V6 t4 n" x4 N
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 p+ Q6 B. F6 r7 [& r+ L+ T( _
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ [ S1 M8 ~% E0 `
swarms.buildObjects();" b% i; v; Y: K2 }
swarms.buildActions();
: `! U9 p) s) J$ W3 n swarms.activateIn(null).run();! w) h1 d3 T: f: I7 D
}/ v. }. x$ X7 t- g
5 k* u. r' n, X} |
|