|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % e) }, v$ r5 y, ~
( ^2 h$ r1 C1 Q) U6 u1 R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" n$ Z$ w1 ^ J- J- f+ R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' [1 t! s4 p4 D u* qswarm.SignatureNotFoundException! g* z& X8 @0 E) S
at swarm.Selector.<init>(Selector.java:76)" H' h, S) G) w2 d& P
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ o0 M4 r( v+ e, l( v8 U) r at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 S/ A. G, V, U9 g8 D( @8 p( J! p" S$ `7 Z- e$ ~# ~
9 k6 S4 }4 {$ p4 {import swarm.objectbase.SwarmImpl;
9 A1 `" a: d" U/ K( jimport swarm.objectbase.Swarm;
$ w: C t. E1 q3 X7 M1 f4 \" Nimport swarm.activity.ScheduleImpl;2 [( t l) L& n6 C/ J) a
import swarm.activity.Activity;; v) A _( [1 v! V* t ?
import swarm.activity.ActionGroupImpl;
( S5 Y7 D2 y: m8 n- |: mimport swarm.collections.ListImpl;
* l3 |( ?" Y# D. ]0 N' |import swarm.defobj.Zone;
5 _3 n: D# r% g8 H! \1 }import swarm.Globals;
" u0 w8 E1 n! F1 f9 C7 Fimport swarm.Selector; w5 a% H0 `1 K. s
import swarm.activity.ActionGroup; : `% Q1 j- e5 v, n
class Agent {6 ~' E4 \0 l% V7 x
char id;
1 R3 S2 E4 ?3 V. K6 G$ z; A) E1 x
Agent(char id) {
8 n, D* b3 Z; m- q2 @: H$ i this.id = id;
: Y: A; G' W+ m/ W7 N5 ?1 W }" c% I$ @. r- ]6 \! i O
3 V U' F! ^; S/ f! i! J public void agentStep() {
: N9 C s+ o' O) T) b System.out.println(id + ":" + Globals.env.getCurrentTime());, F. z" l% `8 r
}- d1 j) C* ~+ p5 i8 L, D, g, T
}
) Z9 m( _( v( h7 S1 U6 v W
; r; o8 Z7 E9 z* q: Z2 _! Ppublic class ActionGroupDemo extends SwarmImpl {
! W% l* f/ r* T4 h' }: ?. Y) ?# Z ScheduleImpl schedule;6 D2 k3 t6 v5 _& i* b1 ]" T" H
ActionGroupImpl actionGroup; C3 j1 j$ u, I6 J n& @7 u
ListImpl list;2 J+ \5 d( _! r% N# _' r
char Id = 'a';
# ^# K/ W, L( e2 P
X8 u! i) ^# {* w2 z ActionGroupDemo(Zone aZone) {7 [7 w7 T- A5 P
super(aZone);: X- M( ?. \# a2 c
list = new ListImpl(aZone);: K! H7 T2 Y3 h" Q# z3 g
swarmSetp();
' Z1 J* q$ Y9 @* N4 A actionGroup = new ActionGroupImpl(aZone);: u. \4 o' v4 c' l: a1 P
schedule = new ScheduleImpl(aZone);
. {5 |3 p: U+ F, C6 @: d. N try {3 |- w9 z, R! |
Selector agentSel = new Selector(Agent.class, "agentStep", false);+ a" b. p$ L5 I5 k x
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 H+ U% W k" G! I( h) ? 8 `4 h! ~$ f1 D0 _4 q( z1 _- R
actionGroup.createActionForEach$message(list, agentSel);
* h0 t9 y% K( M% } actionGroup.createActionTo$message(this, swarmSel);
! l& A6 b" T! q# q5 C2 D6 a- U' } schedule.at$createAction(0, actionGroup);
- L9 n* t/ [3 J( ` schedule.at$createAction(1, actionGroup);
5 n5 s5 K' n% [/ n% j schedule.at$createAction(2, actionGroup);& _8 q. Y1 o$ X' m- S
: y; F# c5 d6 q0 T- n
} catch (Exception e) {- K. f, e# }- V6 i8 [1 {# B) K% ~
e.printStackTrace(System.err);
, c* ?) M( J0 S, Q% Q$ K //System.out.println(e);( H+ e" G6 D; f- l/ m% b; \
System.exit(1);
7 i- Y. _8 i3 \& p/ b& Y }, V5 ~0 A# B9 X. w
, N3 T8 d: ], A& M' j* E% K3 U
( |5 w! d# a- }1 l3 y } E* D. g, |3 u
) K7 b. c' m$ `5 t% B2 s3 L* z7 x private void swarmSetp() {
5 Y' k7 c! ~: L$ p* m } list.addLast(new Agent(Id));2 G' t$ o+ z& N' |2 @- b% O; L9 [
Id++;
' ~' [5 u) v# Q8 R Q$ |& _8 L }+ N9 V' N* L2 r+ S3 M! y8 ?
8 W6 l; N- Y! F" O
public Activity activateIn(Swarm context) {
9 o$ ?% [: _0 N ]9 n super.activateIn(context);
# V9 D8 U( H+ w& l7 T$ k( g schedule.activateIn(this);
3 u9 z5 J9 s1 f return getActivity();/ t) J' i! i" ?( S
}$ T, h1 R! E$ ]& T
3 u" w- t/ S/ O public static void main(String[] args) {
; B5 R7 l8 |, x5 q' V. X1 q- i9 C7 b4 ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* c s8 G" N, T% }' n' {. J* B, f9 Q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: }, D) D) ^% \# f9 @8 k: M- S swarms.buildObjects();& v+ B3 L" D; @* Z, T+ Q
swarms.buildActions();
) H( f' Y7 I4 N swarms.activateIn(null).run();
1 \6 f, o$ F4 y/ A" o1 b$ ~ }
% \' E/ ?" Z. `
; u6 r% |+ A; t- [, Q; Z} |
|