|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; F5 ~+ `1 X. r7 ~; B7 [
5 J5 r: U- e1 R3 W$ x# u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ P9 Y2 N1 ~& _' I4 z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 ` ?; j; d$ c+ A
swarm.SignatureNotFoundException+ D0 ]" w9 w- b: ]+ I6 p) D
at swarm.Selector.<init>(Selector.java:76), g, x* M( ]8 m- @% O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; d& k c6 | A3 P2 q8 _ at ActionGroupDemo.main(ActionGroupDemo.java:67)) G# e' J5 @& ]) s( Z
3 F' l# o" s4 z! d% F2 [/ ^8 \
+ C3 o0 o. Z8 a( m, e5 N8 f& Nimport swarm.objectbase.SwarmImpl;& Q' Y" _7 h' g- c/ |7 P; F! e
import swarm.objectbase.Swarm;
0 i6 q5 n4 u0 a; W" W* @, K) n% Himport swarm.activity.ScheduleImpl;9 @$ u. n9 @+ x5 B% t
import swarm.activity.Activity;" ?8 }( ~) c& u$ w! y9 Z% M( p
import swarm.activity.ActionGroupImpl;& J* r2 W6 h0 A) A; d% S$ r; H% y( w
import swarm.collections.ListImpl;) { K4 E; m8 K
import swarm.defobj.Zone;
2 J, X" A. p( [, Q H' Aimport swarm.Globals;, ?$ n& k: Z4 Z. p7 i" U: S
import swarm.Selector;
0 c* {! r O- p% limport swarm.activity.ActionGroup; % @% P5 J1 H/ @$ r
class Agent {
6 w& E+ `8 S9 j; y1 C% u0 U. Q3 | char id;3 ]2 u% {4 Y) D1 R G! G
$ d# s, K3 S& _! T, B
Agent(char id) {6 ]( C3 v, r" O
this.id = id;
0 r1 `4 Z9 X, M }; u4 W% [& l" B2 i# Q
( U8 T* S8 C" R. o% ?# m1 t5 A# w public void agentStep() {
$ M4 @5 n1 l; L; Q: E* d# C/ n7 T System.out.println(id + ":" + Globals.env.getCurrentTime());% E5 m3 Z' T _/ D o/ J
}
" F. L4 B: s: J' p} ^& B2 T5 S" P, p/ `* H& [! y
7 x' h, W! x6 n' M2 q
public class ActionGroupDemo extends SwarmImpl {
8 p4 Y" @. i3 W7 p' Y ScheduleImpl schedule;
' h! E; h0 L4 F/ _6 n ActionGroupImpl actionGroup;
7 J3 Q# @7 D/ p% V% L- c4 E ListImpl list;. q) a3 [. v8 ~. W7 H
char Id = 'a'; y3 X; }4 N) }5 b. B3 i3 U
v1 t$ H' m5 r# { ActionGroupDemo(Zone aZone) {/ e; W" x! u- w% W( }# b7 H
super(aZone);5 q2 u( K. p4 @2 H3 t
list = new ListImpl(aZone);/ q3 e# V G5 D' I/ q/ H
swarmSetp();
7 i' [4 z1 p+ x$ A8 } actionGroup = new ActionGroupImpl(aZone);' c. V! W- `% p% h' u: J0 Y
schedule = new ScheduleImpl(aZone);! E4 `- |1 q- z" \* v
try {
0 i$ j0 H8 d( D3 W Selector agentSel = new Selector(Agent.class, "agentStep", false);: v0 T9 ~! ?% X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% @' y5 r( u$ D, p7 H' C% o& z. W1 R
5 I" @4 ~: ?( ?
actionGroup.createActionForEach$message(list, agentSel);& A" o! h" N: F: e, \8 r
actionGroup.createActionTo$message(this, swarmSel); `9 m, f; S; ~- d4 G
schedule.at$createAction(0, actionGroup);2 J: D2 k a6 H
schedule.at$createAction(1, actionGroup);# d1 O' U( L' }# a0 }4 E* \
schedule.at$createAction(2, actionGroup);
2 m- q3 o0 P1 z
" |4 ]7 I# Y' f3 Q4 N* J } catch (Exception e) {! o, b" v) ~! T0 v( j" q$ {
e.printStackTrace(System.err);# h7 h; E6 ?+ a4 c
//System.out.println(e);% F+ y8 G& k, r, R
System.exit(1);
$ g3 ^. Z: y/ V5 ^ }, m9 S. e1 g& k$ Y; j4 j
& i: U: W. F5 n( d. V$ j; t+ M* F* p H. W
}
/ }) t' ?5 p" ^: b
/ i, ?3 K, A4 G5 c private void swarmSetp() {
) o" `: s. ~- U$ b- b6 R. Y; n list.addLast(new Agent(Id));
; s" ^1 } G* ]6 E, s8 U" F, O5 S Id++;
8 S! a. T5 g2 O( W. \- Y2 Q) a6 w4 G }. t3 n$ l2 ~2 c1 I0 ^7 w
* F3 L Q" b1 U4 e& y public Activity activateIn(Swarm context) {
8 c8 l1 W2 ` H% ~ super.activateIn(context);5 C' D/ e" `4 H- P. \0 L! y. F% y
schedule.activateIn(this);
, e. r9 Z4 j% C$ d9 W- i: w$ c+ F return getActivity();1 ~! [" O5 s6 _& z( f* f1 S4 q
}
" U6 |. ]# h4 h3 _5 w6 J4 d [5 D( u, {
public static void main(String[] args) {
, j7 M; e# m: Q- @3 ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) G* r5 p* z0 y( c7 A1 S* o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 W/ i; ?1 D d( {$ j* h- L
swarms.buildObjects();
3 P5 m" ~& B. Q9 r% t swarms.buildActions();' F3 t, K: N$ t* b
swarms.activateIn(null).run();8 I7 u% q9 i8 |+ [ [; m( d
}
" N1 c3 }3 e1 {" d: b
) M9 p1 @$ M% |+ {} |
|