|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + D7 C# T3 a; p; m" Y
6 b2 |& V( Y1 g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 ]. {( {8 m$ w! I' x2 `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 R3 O: ~; |' `( E) m
swarm.SignatureNotFoundException
( D5 r4 a) ^" y3 U- ] at swarm.Selector.<init>(Selector.java:76)' H5 k/ o& ]0 Y# V5 T0 h9 {
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& Q8 O( }0 C C$ ?+ X: `8 X% M at ActionGroupDemo.main(ActionGroupDemo.java:67)
% q6 U4 P: G6 Z5 V
: m |' {5 g1 p) A
/ Z& n5 C$ y& e. ]import swarm.objectbase.SwarmImpl;* e# l2 x; N4 Q
import swarm.objectbase.Swarm;) S0 f8 l/ P- p. v7 f8 J* S( M
import swarm.activity.ScheduleImpl;( i' i+ W% @6 Z5 o% Y9 W$ D
import swarm.activity.Activity;* H! Y* a9 U6 c3 ~
import swarm.activity.ActionGroupImpl;
$ e+ R8 l& S P% Z" P S. i0 Qimport swarm.collections.ListImpl;
$ @+ M1 v; g8 j- Eimport swarm.defobj.Zone;
$ `6 `8 z1 R. q: ?0 e, C& Nimport swarm.Globals;7 B, S6 m9 {3 N7 n6 ^: ^3 q2 T
import swarm.Selector;+ G5 R1 O: X5 c1 f
import swarm.activity.ActionGroup; 5 Z6 O- o- Q; b. E/ @: K
class Agent {, Q, u' _: s. {" K
char id;
1 g& O j w2 B5 x0 j6 u+ F( l9 W9 l; G6 v- U) @. {
Agent(char id) {' K% y# e! Y* j4 c9 x
this.id = id;) D0 {9 v/ _- c! |4 J
}$ b2 Y% y/ T" o& b" o
! [5 }2 M/ O4 ^1 `; M) A o
public void agentStep() {0 _, b& ]9 I7 X; C( \+ p k$ M/ C
System.out.println(id + ":" + Globals.env.getCurrentTime());# t5 Y' m3 \8 S
}0 {, L4 W" B2 J1 e, B
}
1 x4 p8 {" s! y5 d4 T! o# u! U) F+ X; w5 D3 J$ Y# `5 [8 J0 W/ K
public class ActionGroupDemo extends SwarmImpl {
0 |% F$ n- w6 U* K% t ScheduleImpl schedule;& O, `! d$ M7 o
ActionGroupImpl actionGroup;
1 k8 ]- h6 j$ I: t ListImpl list;. H) _ X7 j. w+ I& q
char Id = 'a';
3 `9 A" p/ l; W5 n0 V) z8 Y8 t9 C3 s7 \, Q# G9 s% s# n: u
ActionGroupDemo(Zone aZone) {
3 l7 s& \% @# t$ k super(aZone);
* B+ Q' _$ @/ m* P% c1 S! G" x list = new ListImpl(aZone);2 q7 Z+ F8 d1 x8 f: ~
swarmSetp();
+ b" t5 h) @2 W9 ? actionGroup = new ActionGroupImpl(aZone);( Q& j( B9 w* l9 F; Y
schedule = new ScheduleImpl(aZone);9 w- _) {% l9 L" U# W9 k" I
try {
8 p$ p) o8 R8 m# w; |0 l Selector agentSel = new Selector(Agent.class, "agentStep", false);% u- a2 w! s0 E2 C! t' L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 F- ]$ }# R1 R+ {' d2 W
( k( j1 K1 S9 r. N1 t& a. [ actionGroup.createActionForEach$message(list, agentSel);
- h+ w ~3 V G' N! ] actionGroup.createActionTo$message(this, swarmSel);5 |% q5 d4 L# W# a7 u
schedule.at$createAction(0, actionGroup);8 R; w/ |3 s" B7 w4 V
schedule.at$createAction(1, actionGroup);
1 M4 y# X. ]. {* [0 T/ n" {( g schedule.at$createAction(2, actionGroup);7 I" K9 H1 {: _3 J4 T
4 e7 ~% D1 v8 A) ^- d& x' ?9 d( E6 l
} catch (Exception e) {" x" Y4 s4 Z. Q+ t6 \
e.printStackTrace(System.err);
' E( G7 S$ v6 a3 y) n. I //System.out.println(e);
( [* [8 ~7 x! r) B System.exit(1);5 N" C$ u: t& h9 N) G
}
, {% Q, E: E* r- N5 W& Y6 M
6 N% _7 `* [# v, T: F# N9 {5 N& G- Q2 |5 m; X- [
}
+ P; f- {# {2 a& h
# T5 P h6 Y8 @& X" h private void swarmSetp() {
; W, W; b2 G- S$ d list.addLast(new Agent(Id));/ c+ A3 s: q9 }4 @# v( y6 k
Id++;
$ k* |- G% s% D8 {) C# u. P }" J8 P0 |; j4 s! _' a. b
, P& D& j/ o( ?, S4 V* _, h9 b! g
public Activity activateIn(Swarm context) {! I& ?% c* ^! B: J- j) `
super.activateIn(context);6 p- E4 V2 Z2 B& f' T" U
schedule.activateIn(this);
6 L7 b( D* M% L O- s/ m" ^# q/ s return getActivity();3 S) R9 c8 L" c
}
9 M. w9 J# H" @0 l
/ G" X+ a" b4 z" o) s public static void main(String[] args) {
3 B3 d3 p( @1 _ B4 k$ [ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) c4 M: _+ ]2 w5 I4 O Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# I, U5 x( ?0 c+ e- p/ u- X
swarms.buildObjects();
* l2 l- y. a2 ^& R: K8 z swarms.buildActions();3 D4 y7 p" ]/ h7 ?5 ]6 W
swarms.activateIn(null).run();" Z( w. J2 ~5 P* |- }
}
8 V2 g3 z1 J9 W+ r) z( r2 ?! d) h0 Y" q2 G
} |
|