|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* k$ P$ a2 }* F) c- @- ~& z& f" q! V9 A& B" r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 y- s4 A }0 r: v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." g% }" F! s. q5 I( \0 P X( @
swarm.SignatureNotFoundException) p9 k( k7 N7 r! s
at swarm.Selector.<init>(Selector.java:76); j9 ?2 A, o- i t1 h r$ K
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): t/ d: ?( `; D7 }# e/ q7 P
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 k3 U6 x) @$ G- n D8 [0 ]2 g4 g3 y) v4 L& s I/ ^) U2 W0 j& Q& H
7 |# c* l0 x0 C p$ d
import swarm.objectbase.SwarmImpl;3 Z2 t% O. t7 V- _# V
import swarm.objectbase.Swarm;
" o- e. A9 g# W: B1 aimport swarm.activity.ScheduleImpl;5 k# P; d& i7 Y6 o! |( [/ z
import swarm.activity.Activity;
, I R6 O* D7 T5 b# ~ l3 fimport swarm.activity.ActionGroupImpl;
) N0 @2 z9 u* k, Ximport swarm.collections.ListImpl;
4 a% j& {# X1 `/ L% q; c# Y8 s/ Bimport swarm.defobj.Zone;
& u. f. q( q0 ]( a: eimport swarm.Globals;
5 N4 a( }& r* u$ g- \import swarm.Selector;8 U/ L4 `9 p' Y9 g
import swarm.activity.ActionGroup; * F1 X) J% y$ G+ L" W8 Q3 N) G6 g
class Agent {
& p/ T& U6 O- f& V, a7 d: ^' m char id;
# p7 ~& @5 \9 E& O! ?7 A% }* [$ c2 M: t1 J
Agent(char id) {
) n+ Y, p) l. `( \4 k4 } this.id = id;
. \( }; l' R4 Z1 h/ T( |. z/ K }4 C" [- u4 L/ C+ K6 m1 \2 R
" J4 s/ R H2 E" t1 q+ V% h public void agentStep() {3 r% \: K8 e$ K5 i' m+ g
System.out.println(id + ":" + Globals.env.getCurrentTime());
V. k/ \* ^; G }
+ H. \1 @' S) d X. J& G}* A9 t0 h4 D/ H: D3 z& S" o
& Y* b& w3 b( r" ^
public class ActionGroupDemo extends SwarmImpl {
, V* |! ?' @4 B7 Q ScheduleImpl schedule;
2 }; _4 p! K1 W0 y* v# y ActionGroupImpl actionGroup;9 l$ H6 R+ ]/ v: ?9 ~- z
ListImpl list;
- U6 u" P3 `3 i* Y( F char Id = 'a';
1 S9 q3 y2 d8 g9 ?# c. T$ A0 I& M6 U3 n/ ]* ?
ActionGroupDemo(Zone aZone) {) o ?4 J1 _& w6 Q& _/ ?. D" m
super(aZone);! F3 r/ y& R, h! O
list = new ListImpl(aZone);; R" L7 m, I8 B. G8 j' A
swarmSetp();
4 X% o; d2 B! p( I" B! H actionGroup = new ActionGroupImpl(aZone);, x/ T9 _/ g: ~" Y! L* _8 ^6 o
schedule = new ScheduleImpl(aZone); E$ ]" ]9 O- X" Y$ i
try {
6 P+ W N% U. n4 [9 ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);8 f* ?% M. i/ R$ M" x, [2 O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. `; H P& A. E h) S: d
; U- V+ @) [+ @2 ^$ t actionGroup.createActionForEach$message(list, agentSel);3 n6 M9 w1 Z0 u/ _5 {5 r# Q
actionGroup.createActionTo$message(this, swarmSel);+ r" u7 ~0 ]' K1 }1 \' M3 `
schedule.at$createAction(0, actionGroup);
5 u( F) x( x! Y, ^8 J8 o7 v schedule.at$createAction(1, actionGroup);) e0 J1 H1 P5 W9 l8 g1 i
schedule.at$createAction(2, actionGroup);0 R" B% |+ f- h8 \6 f4 u9 @
: h) K; B# J* C( ^. U( [
} catch (Exception e) {
* |0 D+ F8 ]& r1 T* `/ s e.printStackTrace(System.err);3 B( V1 x1 R# N/ I
//System.out.println(e);% B. `# |/ o% t1 l. p6 A! J% ?
System.exit(1);
/ e" X0 O' ?2 j, o! U& L0 y }8 D# M$ l0 l+ W7 T( a8 |
# _: t6 C+ m" Y, Q( ^
+ }6 n) z. |2 g+ T. O: G+ j1 e) b }3 W/ {4 d9 J$ K2 S4 X9 u2 Z8 A
+ O8 U: ^, C- w, U9 F; X
private void swarmSetp() {
& u4 }8 P' q2 p1 E list.addLast(new Agent(Id));- w4 i5 F* g- e$ L+ V% M
Id++;
% x9 K( I p, x" U0 l& q }
8 K9 {5 |* U% W; B9 d& y" R8 I2 }
% i* q" c! }/ o* r public Activity activateIn(Swarm context) {
9 r, y' q) N2 W) {. r9 S0 V super.activateIn(context);) T6 P- E! J0 I1 h2 E- T
schedule.activateIn(this);
3 W, x" E$ c0 N# F2 @) R- { return getActivity();6 B2 j4 p- S% r3 }1 X7 K( D# W
}
C8 J! U) X/ b# S+ H2 b% R( K
6 f8 O7 H! f' o( S2 }; l0 i public static void main(String[] args) {
# B) ]7 `- m1 o ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); T- s* O1 y% \) W( Y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' N% g2 B- Q. O6 ~
swarms.buildObjects();/ r2 D7 u/ T; M6 R" V& }+ M1 ~
swarms.buildActions();
4 q1 a1 X! T4 j' J# C swarms.activateIn(null).run();
; H9 p' l) h- m7 } n }
; p- e" [( P8 f- g A$ k
4 }( j' g+ G6 ?" B' h} |
|