|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; j! H* k8 i7 @7 T8 f% X3 G
) ?* |9 J* J5 e' T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( F: ^! Z$ l7 g% |; |, @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ @$ z! U" Z! c% o. H6 [
swarm.SignatureNotFoundException
$ K1 Z# W- n) } at swarm.Selector.<init>(Selector.java:76)6 _! ? f4 z f* }; {7 @
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ i' i# r/ {' h8 \6 \3 F7 @
at ActionGroupDemo.main(ActionGroupDemo.java:67)+ m7 B. ]9 T J+ ^
' s& I% F7 r$ b" z3 o/ S4 h! b7 G2 K/ G* @2 [5 v7 }* R
import swarm.objectbase.SwarmImpl;1 E& k, R Y# |
import swarm.objectbase.Swarm;
+ l- ^/ ^ `# c) gimport swarm.activity.ScheduleImpl;5 `! T' t2 y. S- a% z% }% w; m# s
import swarm.activity.Activity;
0 b! o$ k' ]; U* U3 }. r3 I* ]import swarm.activity.ActionGroupImpl;* c: M& Z) L0 n
import swarm.collections.ListImpl;
! F/ k* h4 \3 f' C1 N+ iimport swarm.defobj.Zone; 0 g7 H5 A) L9 O6 ^7 t% W! J
import swarm.Globals;
( C5 I$ `( ^* l5 s) G- ?5 J& Nimport swarm.Selector;0 B% o3 V6 y: D, v
import swarm.activity.ActionGroup;
) W8 Y' ]; v2 k* t( d9 S4 ?class Agent {" G/ Q# {1 S7 y6 S# n% [4 X9 ~
char id;
* H3 z2 ?$ ]1 w
6 i8 e# C2 t: O. N% ]2 B0 F! y& k Agent(char id) {
X7 \* e0 A- G0 } this.id = id;7 X: c3 O6 _# d& ^1 ?/ f
}2 {3 j/ w2 u0 M
% M3 o$ w2 w$ y" ?% c( t
public void agentStep() {
: W/ C! p. x8 W5 D System.out.println(id + ":" + Globals.env.getCurrentTime());, R: G' X$ I+ e* P2 l% m
}; x7 c# C# B- Q, y
}
, Y8 b6 |; B- E
9 X1 S7 O! h: N+ I5 npublic class ActionGroupDemo extends SwarmImpl {/ y7 o) @( V0 x; S
ScheduleImpl schedule;, f1 a( l# I5 C y
ActionGroupImpl actionGroup;" x# `4 @* T& Q! S$ U9 q
ListImpl list;( h |" K+ r2 o6 M" x1 p
char Id = 'a';
i; y& E, C& ~4 X, J
: g1 ]7 Z( m) i9 K! ]: Z ActionGroupDemo(Zone aZone) {
1 ^, z' a$ y( A2 |( I, \ super(aZone);
! M9 E' m6 w5 s9 V2 | list = new ListImpl(aZone);2 C$ D) n4 u3 Q( E9 T+ d
swarmSetp();
# W9 m6 S: G: r& d6 @ actionGroup = new ActionGroupImpl(aZone);
3 l0 {+ v. z4 |4 j" T7 N schedule = new ScheduleImpl(aZone);
: N+ |) F' b$ T; n$ T try {
" O1 }! n4 a: f5 @- J- @" G2 C2 V Selector agentSel = new Selector(Agent.class, "agentStep", false);; ^: ] E! w: d! I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 m% E3 l0 l4 z+ T. ~- s
% G3 s2 D& _) w- e$ A actionGroup.createActionForEach$message(list, agentSel);
" A9 {5 m: Z) P) I6 s- e actionGroup.createActionTo$message(this, swarmSel);
! S& w+ y4 H' g* {$ Y schedule.at$createAction(0, actionGroup);! U% `: d4 ^! |
schedule.at$createAction(1, actionGroup);% a4 o: K6 ]; A8 U+ M6 f
schedule.at$createAction(2, actionGroup);
4 T. f% b) M. w
- \9 p$ n! ?$ u' U0 D: d: ^3 F- I } catch (Exception e) {
5 C! ~, g8 h8 H e.printStackTrace(System.err);
; N3 ]4 c$ k3 b- F9 u# c //System.out.println(e);; p% i" ]: e( `
System.exit(1);/ R; x0 B3 u0 \* I/ C p
}6 s' Q v% Q0 a* `
' n4 o+ C$ @ n) t3 q* D
1 w [! f6 m/ x( O
}
' w0 {$ w% X6 d! o! s. ~( L, p% z0 `; t
private void swarmSetp() {. a6 z0 z/ q+ e& F, L. K
list.addLast(new Agent(Id));: R: ]% l0 n2 i9 F, v! v; j" v, |
Id++;
% o, c# c) \: E$ Q6 r8 H }
6 G4 b5 N% X# |) ~ Y
: [, E n! p' f$ J- a" |* e3 S, @ public Activity activateIn(Swarm context) {
% h9 a5 L. a1 P super.activateIn(context);
, ?: b( ~3 E5 g: O schedule.activateIn(this);8 k7 J+ {- }8 u# j
return getActivity();
4 o. I! G4 m. S1 C: Y }# i1 t1 t6 F" n4 s
6 U; x1 D& U# p public static void main(String[] args) {
1 F. I- W! @0 t, N: \% M! }7 S- R0 _; H Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( a: f: s5 I! s* E w3 o: p
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# f) l$ ]* F) y7 a4 {) V! s swarms.buildObjects();- i; J3 q7 @& p1 g
swarms.buildActions();
0 l/ s0 t+ \/ e swarms.activateIn(null).run();
# c9 p! @0 N5 R% X$ k6 ? }
$ a# o7 D" j% W8 [: g9 l5 P! x& S$ R, `1 F- A: v- E4 ~1 V+ q
} |
|