|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " r5 G' `, e" W( F2 W8 ^0 U
9 ^1 O* t. F$ W S: W1 b' k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ M! k, Z4 ^ U" @4 U9 f: m# M$ ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 W/ r2 X, z: u$ l& ^" q6 F
swarm.SignatureNotFoundException
( S1 X3 l# _9 o7 S5 V+ y& C7 ], I$ ^6 e at swarm.Selector.<init>(Selector.java:76)
S5 X1 {) z2 m) x, b1 d0 t. o8 z5 u" ^ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 w" H! }6 C1 Z1 M9 Z2 E/ r- e at ActionGroupDemo.main(ActionGroupDemo.java:67)8 e. S% R1 _8 X3 E, r
7 ]! X& h z# C3 O' B9 Q) J
% P4 J9 D' u- }" Fimport swarm.objectbase.SwarmImpl;
1 d1 m* J8 H8 K3 h! u j% P# w: `import swarm.objectbase.Swarm;2 j- c3 o. a0 b: Y0 z f
import swarm.activity.ScheduleImpl;7 S* e) `' l% M$ R3 r( W% x
import swarm.activity.Activity;, M5 d" ]+ q% J" y7 v a. J+ b6 @* M8 |
import swarm.activity.ActionGroupImpl;
& y% k$ \7 }* S) `4 y; R. \import swarm.collections.ListImpl;6 E- O% Q9 N6 C+ }9 o" _, W
import swarm.defobj.Zone;
: x0 ~/ `) x5 \5 K0 x, aimport swarm.Globals;9 H. g5 r/ t9 M: H- r) C
import swarm.Selector;; u. x; S" f" O/ z
import swarm.activity.ActionGroup; 1 _; {' Z; G7 e5 }( }2 n3 [* S
class Agent {
* k, f- N. f" h j char id;
+ y$ g R0 L+ Y# C e: A# H1 S
' H" R: K$ i; ~6 W$ y' X0 J! w ]% K- a Agent(char id) {9 `2 X3 O) R7 R, V4 T
this.id = id;1 c+ H, N D: A# v( k) u, ?
}
' A0 M5 @4 c$ U) x
& w7 I2 z* a3 e& v; q public void agentStep() {
3 i( ]4 b6 p. E9 _' \. t& _0 U7 a$ z System.out.println(id + ":" + Globals.env.getCurrentTime());) C! {; O2 H( J6 l9 a b
}9 d% K9 V' Z1 T% B- _+ |6 A
}8 s. x$ M, A. V8 t! z$ j
2 @7 P: h7 l4 ~3 T3 n' r% mpublic class ActionGroupDemo extends SwarmImpl {# A: C$ I, ^( ^$ @% P6 b3 q
ScheduleImpl schedule;- S [) q4 `" D% f( }8 K! M8 c$ t* T
ActionGroupImpl actionGroup;+ s; I1 a9 j6 S* C7 s6 L/ B
ListImpl list;
( U9 K, ?9 W. e char Id = 'a';3 H- Z; y4 t' B$ H
1 V- h0 X, L1 W ActionGroupDemo(Zone aZone) {+ G: D2 [0 O' P( `9 l7 q; s
super(aZone);+ e. L5 r: B' P6 @0 {5 j+ d
list = new ListImpl(aZone);
0 d7 D. Z" A% u+ c swarmSetp();
3 `* b2 _ ?% O6 D3 K5 A actionGroup = new ActionGroupImpl(aZone);
$ F; X/ w$ e: ?% c schedule = new ScheduleImpl(aZone);
- i8 d; C; h. `% b2 k+ c H try {2 w2 E2 ?) h9 e7 x$ u& R' x
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 I. d, U/ {- e0 P6 S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ u% M$ } }- Y0 O' s
! R+ c$ r2 ~; q# m w actionGroup.createActionForEach$message(list, agentSel);
0 o5 J( L% ]' @: w actionGroup.createActionTo$message(this, swarmSel);* g, E1 `: M* Q8 C( v$ g" G
schedule.at$createAction(0, actionGroup);
, D6 h" J2 g5 U& `$ M schedule.at$createAction(1, actionGroup);) N% E1 K- A. }9 w: s$ \: f8 G) P
schedule.at$createAction(2, actionGroup);9 |& F. v H: B G7 v1 N
G' ]' b- L# r0 }/ t) D# [% [) D
} catch (Exception e) {
# k' d( [+ @0 _" b8 s e.printStackTrace(System.err);' b% c8 @" o( E
//System.out.println(e);
4 i2 y/ D6 [6 u6 u2 D, V L5 U- A System.exit(1);9 d3 q7 J: `& ^2 l7 H
}
0 t6 C4 Q) o7 w) u( u. c& j9 _, m& @' J; I6 x$ @) O3 B# v2 b
1 `9 V* l- A% t
}: f e' F; A" U, p% P C
4 _" D Y7 U7 l* e& t
private void swarmSetp() {' x4 o1 \3 z( N+ o7 M7 c4 |/ |
list.addLast(new Agent(Id));
* n( W7 U% S& b3 O& ]; L Id++;: d, ?' _2 y3 J5 t3 ?3 k. c! u2 |
}
- K0 f0 e6 w! x. B! u- V& Z4 u' V9 C9 c# S% P
public Activity activateIn(Swarm context) {
! v$ b* _. p, ]+ q super.activateIn(context);
: F/ E- p0 A4 s+ y( c( i schedule.activateIn(this);
% F( D( X+ R/ p4 l* g V return getActivity();
& O0 }" n+ k, B( Z/ _) R0 @% f }
$ p5 Z& B( {: j. ^& U
% ~. ]3 L2 _% G5 j" }1 u public static void main(String[] args) {
7 X7 V) Y0 l6 y, ~ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 S4 s! R7 ~' H5 l0 K) S2 e& V
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% T; c- x. v8 _$ M) b2 B. f
swarms.buildObjects();# M g" |5 G5 d+ ]3 s1 f' [
swarms.buildActions();
, A/ \9 a* b7 U4 `7 e% Z swarms.activateIn(null).run();, I* \- ^( t( k6 Q& ~4 n
}
7 K, b. ^' H' }: l k" i; e! q2 ~$ [, m/ m
} |
|