|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 z+ C0 W7 p' b
4 i0 c k" s) V( g% u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ ^* U/ S( Z7 s' B& A6 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ Z6 p4 O& B1 a' t
swarm.SignatureNotFoundException2 x' U; x: X: o2 t* I
at swarm.Selector.<init>(Selector.java:76) E& ?' X" ?) s3 |( _3 p3 d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 [% B5 V! O% z: ?5 J) z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
: ?0 A3 k" y4 D+ `/ q$ m$ u! w* A0 A& ^! t# L# s3 z
, W( F6 ^1 B9 Nimport swarm.objectbase.SwarmImpl;: u5 [" P! }0 O2 V" ~$ d
import swarm.objectbase.Swarm;, c) R1 |, z+ B
import swarm.activity.ScheduleImpl;) x- l2 @! h' \ }- w8 g2 A
import swarm.activity.Activity;
3 j- ^. _+ ]6 u3 J! \% H9 _0 Dimport swarm.activity.ActionGroupImpl;
' l, ?8 D2 G$ M! \4 x- ^import swarm.collections.ListImpl;
# a& h* A1 v$ t. `+ ^+ Iimport swarm.defobj.Zone; # B: z- B4 f+ N+ b3 _
import swarm.Globals;
% W0 h( c; V; Iimport swarm.Selector;, l. b0 W& n3 z0 U
import swarm.activity.ActionGroup; + _3 `1 W ?) B! S1 Y
class Agent {) Q7 a$ F* x& V6 U, S% S
char id;
3 M% h; D$ }8 `" o, y: k8 T2 ?! j) ~- f4 G
Agent(char id) {6 A5 r U1 R+ q
this.id = id;
, W: p8 B& B- V+ W' J }
! _, S8 `% _: K8 I$ ]- O9 b2 s9 X, _0 W: Y% ~
public void agentStep() {/ m8 E8 B9 j* v/ d$ w5 D2 N, ?2 z7 ?4 q
System.out.println(id + ":" + Globals.env.getCurrentTime());
* R0 ~, k9 E$ O" N% P4 Q1 V! A }
* T, Q# s+ |' }( U}
- V+ e& Y) z- _3 Q) h* a" S
7 h7 W5 I% ~/ n3 _7 ppublic class ActionGroupDemo extends SwarmImpl {; ~" O0 r5 y% ?- Z8 p
ScheduleImpl schedule;
( I! Z0 v8 O4 O/ g ~# t9 u ActionGroupImpl actionGroup;, \1 M( K( H& ?( J$ g1 N* ?3 d0 ~: F
ListImpl list;
, v: @' M$ u$ H) r char Id = 'a';( p! H# s( x2 y# m
% ~' @$ L; Z& M) L# I$ s" Z0 m ActionGroupDemo(Zone aZone) {! A Z- ~/ L3 U# N! P4 Q2 C# I
super(aZone);) P7 K9 O1 r/ e
list = new ListImpl(aZone);) D/ e; {* x: N4 n
swarmSetp();; G/ ^0 y1 _9 j: v: ]3 ~
actionGroup = new ActionGroupImpl(aZone);
$ b% O* r6 S6 {& m: h schedule = new ScheduleImpl(aZone);
& f- Z! s9 S( @4 p% D$ r* k! {4 G try {0 z3 J# ~# b: L8 L8 \# r) ]" @
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* @, j, }& r, s6 E4 b9 a! A Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% K; I( N. }. n7 {
* l; ^0 ^( ]( B actionGroup.createActionForEach$message(list, agentSel);, X+ L' W% G9 `' ?( i1 V% _" t
actionGroup.createActionTo$message(this, swarmSel);
8 L( L! s; z) d# W. {" ~ schedule.at$createAction(0, actionGroup);
. P% i1 Z7 f3 N G schedule.at$createAction(1, actionGroup);
/ e4 E2 z1 B6 `8 v' {; x schedule.at$createAction(2, actionGroup);# b2 g! g4 I3 v
$ |' b ~5 K b+ Y4 B/ v } catch (Exception e) {
; U* j; }$ R- o e.printStackTrace(System.err);
+ J. c, \+ i# W# { //System.out.println(e);/ p+ s) C/ }1 [6 `- L) z+ v+ F
System.exit(1);
, E# h! t/ I+ _) \/ I: Y }
' j! H4 o- W# B7 J! |
# D0 }0 y7 N# X3 ]& y! C
% {0 B+ h# U% H3 O }
/ W% F- \1 J# A( ^2 M$ N
/ L+ X: l( E/ }5 J" n private void swarmSetp() {
: a0 G8 L: r3 `* F list.addLast(new Agent(Id));' O) R' R* G! A! P" ^
Id++;! i1 q0 r. g% e1 m" O0 @, p$ P
}5 N% b- w4 m5 v: @$ o
- i8 ~( W& f, [+ K public Activity activateIn(Swarm context) {
% f! [3 z" ?! @ super.activateIn(context);+ G. Y; _; v- h7 o/ k& o7 p8 |7 L
schedule.activateIn(this);
% O$ e- q' A* L( h- ]+ x$ e return getActivity();2 Z L; D% Y4 l- |8 b$ A- K7 \; @
}; P+ a! _% |3 R* e8 y5 C
9 L; @ e1 t6 l. Y: k! I% q; ]3 s public static void main(String[] args) {
" b4 I6 Q0 X( ]! C0 ^8 [1 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); O7 U$ {& X Q! g% }
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- ?) F. v6 h6 S; v1 X! E4 K6 V
swarms.buildObjects();
# U. ]5 O) q' e swarms.buildActions(); c6 d3 f( q6 s, a- C
swarms.activateIn(null).run();8 u( L8 w! ~; H" F: d4 E, _! [9 D
}
3 q6 @& R9 U6 e. l$ K1 y! [- }6 S' v
} |
|