|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" o% d5 F/ a" d. S# `9 @4 ?. I9 H7 h t. X2 T& x" `9 S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& m v1 c: Y9 d0 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 i2 ^; y7 k9 k
swarm.SignatureNotFoundException
3 e7 i- K' }2 L3 X at swarm.Selector.<init>(Selector.java:76)# R$ z! |8 i! X5 p" O2 h/ N
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, E) e6 W# q- N at ActionGroupDemo.main(ActionGroupDemo.java:67)# G E1 o3 x1 P0 k3 s# b$ Q3 c
# Q5 G# l& a0 t( t3 }1 {0 T, ^; l4 Z8 `0 W" C# h& I: f
import swarm.objectbase.SwarmImpl;' b+ g+ N# Y3 }' D+ |3 _6 @$ N
import swarm.objectbase.Swarm;
: j4 ~0 h& l5 Qimport swarm.activity.ScheduleImpl;& `7 U# K9 q) R& F2 g! {3 D# g) ^
import swarm.activity.Activity;( M, D& b# c1 g
import swarm.activity.ActionGroupImpl;, V; p, P% `) Y& z/ Q$ K" P
import swarm.collections.ListImpl;
7 M) ?( u$ u0 e) _/ u! b2 i" pimport swarm.defobj.Zone; 0 X: \ w7 n7 B! t5 S. r1 n
import swarm.Globals;
; r7 D! Z) d0 G# _import swarm.Selector;
) ?. t% H' ]9 aimport swarm.activity.ActionGroup; 5 w2 G: c1 _% Y; S) z( f& c1 }% R
class Agent {
- g9 @& U5 `# I# o( p! d char id;
* @2 B2 E! b' o+ Y' ?
9 }' T, J1 \9 i: z7 F Agent(char id) {
0 F0 o* i( a/ J: t' q this.id = id;
- z0 J; | P. Y0 [ }
9 j6 Q2 p: D1 p1 [* R2 W; _1 W5 @# y' M' n
public void agentStep() {
3 A$ s: d/ A' i$ E System.out.println(id + ":" + Globals.env.getCurrentTime());
* I8 M T% Y8 Y+ S% Q2 o0 m }$ b7 ^0 |3 r- I+ E% Y* d, [
}- e4 I8 j7 E: H3 ]9 _: X) ^ h
2 ^( I5 e; e' W1 \, [: m1 Tpublic class ActionGroupDemo extends SwarmImpl {
" K3 J4 T# ^. Q P- F ScheduleImpl schedule;
0 U( N- C) X* A [ m7 G+ q [: F ActionGroupImpl actionGroup;
8 E% b3 k) H: [; o9 H; F) k ListImpl list;. [8 T- o. \) l
char Id = 'a';
7 z) c$ z/ w+ i z) R8 c. n, p+ \7 ]6 [) A4 m3 I& S' h
ActionGroupDemo(Zone aZone) {! S; |% r/ a: _- {/ ^) g+ m4 R3 `
super(aZone);' N! W6 d. I1 z; M
list = new ListImpl(aZone);% _+ f U/ Q9 O
swarmSetp();
; G/ I5 k- D6 A" c' F1 L- r$ z actionGroup = new ActionGroupImpl(aZone);5 p! F2 j( {8 `' \- j/ T* Z; y
schedule = new ScheduleImpl(aZone);
8 h0 o8 r+ X* n7 h try {: c$ G" o$ \6 X$ U$ L% j7 d
Selector agentSel = new Selector(Agent.class, "agentStep", false); \: X; b9 d3 o8 Q/ g) K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 `+ e! R* B" T; e' R
" \, m, V& X1 p1 a Q6 _8 { actionGroup.createActionForEach$message(list, agentSel);
# G) R- ?# \' \ actionGroup.createActionTo$message(this, swarmSel);: z: v" J1 g+ r; e+ l! C
schedule.at$createAction(0, actionGroup);- S; U, N6 {5 k. `7 w
schedule.at$createAction(1, actionGroup);
+ l* t6 }' K( P8 E% }/ u: k schedule.at$createAction(2, actionGroup);4 M4 Z* ]5 R0 |
; q/ O0 }- s8 i } catch (Exception e) {% [1 K8 k+ o7 C, k
e.printStackTrace(System.err);
: p1 U- s% a" ~8 M1 c //System.out.println(e);
( _! o( v& G4 y' _6 v# ?1 h+ N System.exit(1);
8 R' r$ q) U6 E/ I3 w }- W" ?0 ~, C7 X0 d
1 |& U1 [/ }7 \! v
- `1 O& u; C6 \- C! X3 V }! g9 D" s! c, b4 _9 f' }% p R
H; t. M, Q1 _, S3 C private void swarmSetp() {
. c" {& u0 l0 Y6 J9 ~, ? list.addLast(new Agent(Id));
. {" q0 E' K0 C; Y; }- m Id++;7 ~$ f* T h# K
}# \) _3 S+ D. N5 M
" q% |- }9 A- X
public Activity activateIn(Swarm context) {# [) v. M% P% Y+ h
super.activateIn(context);
. P1 V$ o$ T6 r5 t) }7 g$ U schedule.activateIn(this);
1 I4 k' q) f3 r; N return getActivity();: P7 K% }0 w1 u- M
}3 ~' T+ ^, p, z2 N
4 _- k$ D$ y6 m- C6 F/ ^& j public static void main(String[] args) {, ~% G0 w! m F" Y |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ Q w. P4 R( i0 B& _
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 ?7 D, Y: \& g9 X swarms.buildObjects();; r# ` v/ Z( N* w G
swarms.buildActions();
9 `. Y$ J/ G: `! [$ d/ }- f swarms.activateIn(null).run();8 V! a! Q. G* K, b R3 O
}: k5 i$ t( ^: P& m( X
9 O! P4 o# C7 H. E} |
|