|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" L" Z0 s" x: C% @$ n) v$ h
3 _) y7 a& }6 [7 k+ F) X* U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 j0 M% I) u7 @' n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 ]) s: p. A }% v8 M" ^swarm.SignatureNotFoundException" C8 q* d, X" W9 X* O5 V, Q3 w
at swarm.Selector.<init>(Selector.java:76); ^7 _) Y' c+ P/ \/ _ {( l# w9 Z) S% [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! ?! Q9 k! [/ p2 s
at ActionGroupDemo.main(ActionGroupDemo.java:67)# h8 I, j' ~! l5 a n( \- @
3 ^ I2 t: }( C4 f" s1 M; _5 a' T! K; R
import swarm.objectbase.SwarmImpl;
( B9 O& @/ X' E5 W; s/ Dimport swarm.objectbase.Swarm;1 l' R$ K6 r6 d4 a# Q. n
import swarm.activity.ScheduleImpl;
0 W, u9 {2 T5 ^, U) f+ n8 q2 Mimport swarm.activity.Activity;
* A- c- [3 x2 Yimport swarm.activity.ActionGroupImpl;" \0 x) L1 G3 \' e" h$ Y
import swarm.collections.ListImpl;
7 x, Q) J4 g: S( s5 V+ ?8 Gimport swarm.defobj.Zone; ( ~8 a' F3 G& I6 Y
import swarm.Globals;
- |7 i6 I7 ~4 }0 T1 y/ gimport swarm.Selector;$ @ F% |+ M0 T. x% b
import swarm.activity.ActionGroup; * Y6 _( c2 q* o* V# w# t' i5 {
class Agent {
8 u# @1 N; C% T/ x( l( w1 s char id;
" k# r" l6 l; |% j, w% E! [" Z) L7 {" x, \, ]
Agent(char id) {
+ E% S! d2 P, S' G% b j this.id = id;
, ^7 i8 X& H: w- f }$ f( A; j5 d9 U( Z: T# }3 ^
7 W. W8 m# s o1 m5 r
public void agentStep() {( t5 O) w# G2 U0 Q7 K' g! O
System.out.println(id + ":" + Globals.env.getCurrentTime());
5 Q- m7 t: z) m5 f" T }4 g$ g4 B9 f' S8 F; A* u- w6 C- C. b
}
y+ ^2 e7 m, W
8 p; ^9 j% M! W6 E9 bpublic class ActionGroupDemo extends SwarmImpl {$ i4 H4 ]: L0 e( c8 s, }+ K
ScheduleImpl schedule;
+ ?" z2 K/ s; x+ ?( g1 l9 Z ActionGroupImpl actionGroup;, j2 H2 ?# R* b2 \; \4 x. R M
ListImpl list;: i9 k" f4 U9 t2 ]; {# R6 f8 W
char Id = 'a';
7 S# w) p# \7 Y/ |7 O0 Y
) _6 [# g- V; T Y7 x/ K( X4 j7 L( S ActionGroupDemo(Zone aZone) {: c% W4 T# `4 t# ~( l/ U
super(aZone);
+ O, n9 a/ ^0 a2 y( U4 y/ I list = new ListImpl(aZone);
& R5 g, J" R: \6 m swarmSetp();, I4 K6 c8 `+ [8 {0 N3 i
actionGroup = new ActionGroupImpl(aZone);5 a g4 q8 {4 q1 d9 `5 t$ Y" l% x
schedule = new ScheduleImpl(aZone);
5 ~( [* O. [# ]7 n* L' Q% n try {
- z8 W9 _1 e1 D+ ` Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 U, y z7 o1 m i; j Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ L+ S' \& d. }: F1 D - {% m! w. n5 D1 D
actionGroup.createActionForEach$message(list, agentSel);+ g% H7 F, a+ ]) M' N6 g
actionGroup.createActionTo$message(this, swarmSel);
5 e& ?# G4 m! z1 C9 t" t: e schedule.at$createAction(0, actionGroup);
6 @% z) C) B! t/ s7 L, c schedule.at$createAction(1, actionGroup);
6 T* v& Z& E; t" x7 [9 s schedule.at$createAction(2, actionGroup);
# n& k; ` A# J9 _$ {; m
% M9 n$ c* u8 I1 @. h5 h5 q* D6 H } catch (Exception e) {
/ ~, U7 R0 h7 g9 L S! l e.printStackTrace(System.err);$ v, M E% m3 Y2 f. r
//System.out.println(e);
$ @ R4 t4 n) j- X. B' {! T" B System.exit(1); d. P* f7 E, Q9 B+ z- e R
}" |8 }/ @- M0 ]5 M( ?9 l9 |
" r1 N, y& [3 K1 J, L6 h
( E3 [4 }- Q0 g# e0 \; i }0 }, e. M* \/ h/ g( @
, ?, e6 i! g" D+ f, E( I) x0 J8 D private void swarmSetp() {
. N2 e. V2 Z( B- I% U list.addLast(new Agent(Id));
1 R7 n4 Y5 ~/ j( L* G Id++;1 Q, j* Z9 B# x; X
}' _0 y0 s( _ S3 F9 j- X6 ?. x
: h' I5 K* c# e. [. A
public Activity activateIn(Swarm context) {
' _9 q+ X$ D* \% [' w8 w8 C) N super.activateIn(context);- W% u6 W! x; c& {0 Z- i# u& G
schedule.activateIn(this);4 F7 T" O+ ~: ~. [* E: L
return getActivity();+ K% F" i' N7 H& | y/ b2 l
}: s) p: r9 i, v m9 Q2 L5 r9 V" j
. |1 R; ~0 X$ V& Q4 u* x public static void main(String[] args) {
' G# n& j4 a5 L8 Z9 X/ o- e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 y8 B/ f- Z2 Q5 ?/ A Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ E: K' ~# `/ P
swarms.buildObjects();
9 `0 Q: R' v4 \2 v swarms.buildActions();
6 q; L7 n, g" G% E swarms.activateIn(null).run();1 O" j; W: l9 a, k- R; h: O, c* O0 g" C
}
+ s, B9 m, S2 x7 u2 a4 `+ Y* j
7 k8 G5 z/ {7 B1 Y% M* K} |
|