|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . e0 R+ {2 h7 Q& R
; S, U% c! B9 H( W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 v- w# S8 Q7 e+ t: g' i" y2 v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., }2 q# V8 Z8 f
swarm.SignatureNotFoundException5 L, u5 m9 X, d, w0 q4 f6 e
at swarm.Selector.<init>(Selector.java:76)
' U2 D* y w, t at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" ^& l. x- |* `. y: n1 @4 @
at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 b4 T6 C3 w/ P2 q- n: t# _3 l7 O+ ?$ c! J1 b, `& Y5 R
/ t6 R5 ^, `: ^; a; }4 fimport swarm.objectbase.SwarmImpl;
3 q' O0 q) X& |; U* l# Pimport swarm.objectbase.Swarm;& g) Q0 X- d$ B6 l
import swarm.activity.ScheduleImpl;
( n. l7 x9 f+ W0 g/ G& z+ n4 \import swarm.activity.Activity;
7 O2 J4 K' [# q" `0 zimport swarm.activity.ActionGroupImpl;8 @" j% B+ q* T& Y2 \
import swarm.collections.ListImpl;# q) ~- J$ N4 ]
import swarm.defobj.Zone;
0 F) B9 S( l' Y' e- D3 [ y/ h( W: jimport swarm.Globals;
( ]3 } g4 ]; q$ A5 A8 yimport swarm.Selector;
+ G- w3 q; i, H) f4 [2 cimport swarm.activity.ActionGroup; 1 g! R. h1 D+ p: O; S6 {
class Agent {. R) P( s% N& z' \) e
char id;8 D$ h) z! H& B1 @
0 o. }2 h4 ~) ]6 s, h* A6 V0 {
Agent(char id) {
& Y% H9 |5 ], W; C this.id = id;
+ b( ], ?. F% S- L1 F5 O }
3 _, V1 g3 s! _: n1 E5 k, c8 e. H5 ~& R2 ~ ?2 _7 x1 d, V# g
public void agentStep() {: H0 j0 H+ p5 g8 f
System.out.println(id + ":" + Globals.env.getCurrentTime());# O5 i- l5 x# ], r
}
7 Z% x) i2 X& ]1 S}; {3 S1 c. o8 t. |& z; a" W
Y; ~- Q( ^: H, l- r0 Lpublic class ActionGroupDemo extends SwarmImpl {
, ]$ ? E5 o" U7 {( P ScheduleImpl schedule;
+ i5 O3 x. ~1 h3 G1 g! r; R ActionGroupImpl actionGroup;) d# c( l5 A- M* x& A, @! \
ListImpl list;
+ N& V+ |' K, Q1 W1 G char Id = 'a';+ O/ @7 \! _9 w* f
1 \; B9 L! _ L
ActionGroupDemo(Zone aZone) {
, p5 o. I5 v% {: k% F super(aZone);; \8 |+ x) M" J( `8 V
list = new ListImpl(aZone);
7 p, y4 m- k' m! } swarmSetp();
. t& n# n) ~: Y% t- n3 o actionGroup = new ActionGroupImpl(aZone);4 }0 n5 P9 A2 R( v2 p3 R+ c
schedule = new ScheduleImpl(aZone);( P3 ^% u& r0 Y5 X+ ^, r0 ]; B
try {, M% A" [0 M& N8 o' U9 C, b
Selector agentSel = new Selector(Agent.class, "agentStep", false);9 c0 U. u4 O1 \
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& l1 `. x4 x8 {* k( O! n( z8 U: v . [. ]4 M$ t' N( M. h: ~ v
actionGroup.createActionForEach$message(list, agentSel);5 u4 P) D- m" k* Y3 {. t
actionGroup.createActionTo$message(this, swarmSel);$ m% P, r; w7 C4 v% I
schedule.at$createAction(0, actionGroup);* G; o7 l! X. L6 B" m+ E `
schedule.at$createAction(1, actionGroup);9 C3 N* Q/ B1 q
schedule.at$createAction(2, actionGroup);) d6 D" M7 ~) |1 Q' o# u) D
9 d' K1 N$ ^( E+ }( r( L! p } catch (Exception e) {$ w' [9 v; a, S, J! j# E& y
e.printStackTrace(System.err);
: Q/ P6 n, K" n8 d: f //System.out.println(e);1 ]' a/ D9 Q; `. I4 V- J5 e3 ^$ b
System.exit(1);
5 w1 @3 S0 R( j* d8 U X& \0 ~ }: N q* W; f4 x8 s
* M, c0 ]& t3 T+ N6 c/ G* O
% R/ A7 a1 U+ b }5 B+ b3 v7 N( E. v5 t- y' H5 V
( j% F9 C6 W: @: g9 u+ X; y6 I
private void swarmSetp() {
6 B$ n7 j" x) S2 z" y7 A% m' m s list.addLast(new Agent(Id));$ t6 M5 J3 @- z4 m
Id++;
8 @) A' o5 X) X$ W }8 |: `' ]/ u8 B1 ~0 \9 y. a+ q
+ \# T# G/ M& }, U
public Activity activateIn(Swarm context) {9 I& z/ I- e' y# o
super.activateIn(context);5 p$ _$ {0 ], L& v8 f* {
schedule.activateIn(this);3 r) L A6 I, F# ^6 M) Z8 ^- b
return getActivity();2 R ?. k4 M; D, y
}+ v8 S0 Q& y; x$ }; ?+ s# k
, S- }8 L+ L- L" |; S public static void main(String[] args) {
' W, d7 F+ {5 p+ V6 O( Y Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 K4 P5 S, z- k' ?1 m6 Z8 W& ` Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 g4 f1 Z* z* L4 G- y
swarms.buildObjects();/ g, [0 C S% {$ L+ O# j" \0 o
swarms.buildActions();; q6 w6 d3 z5 E- s
swarms.activateIn(null).run();
( f6 l: f+ Z8 F }
# U# l% h" Q* ?6 Y+ X
( j* [% j: p/ O' g2 |$ d8 u; \ p- J} |
|