|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 o5 ]. D$ L+ g- O' g1 |# Y, X5 e
. b1 ]/ c+ \7 B' r, R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& N$ T' \! i9 i2 x* S- B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ Z0 _5 ?% V; G2 @6 u) o! w+ R
swarm.SignatureNotFoundException
0 W, H7 V+ a# @7 i$ f& r at swarm.Selector.<init>(Selector.java:76)4 c2 l+ g, d& I3 U* m& y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37) m7 C* q5 K g
at ActionGroupDemo.main(ActionGroupDemo.java:67)
( k; G# }4 j2 @: p0 i5 Z6 G7 M1 ]& k1 c" ~# K
2 V7 Z9 s7 k9 t* q: i0 Pimport swarm.objectbase.SwarmImpl;% ^) j. K9 L' t- N; E' q+ ]
import swarm.objectbase.Swarm;: x4 Q- q \3 P7 c, x$ ^
import swarm.activity.ScheduleImpl;
0 G6 V- N. V Iimport swarm.activity.Activity;) l8 L) r* z5 V" a4 B, Z- k/ z9 e
import swarm.activity.ActionGroupImpl;8 \$ h8 @0 W' b! f3 j+ L
import swarm.collections.ListImpl;) k$ R" J. Q/ c/ o- ^$ Z
import swarm.defobj.Zone; ! m8 ~4 h- c$ I1 M5 P0 ^
import swarm.Globals;& L4 g% J# w, {9 p$ M# H2 @
import swarm.Selector;; U+ f" ?8 w% [ [( Z
import swarm.activity.ActionGroup; * Z* i5 N& m2 Q3 }! T1 m
class Agent {* W2 q& [( R9 k4 V0 k Q
char id;# K, y" d9 J/ `* I" o5 e$ z
! G4 G) N6 i% q ?( S Agent(char id) { J% Q8 ?5 I7 K3 R
this.id = id;* X `9 a3 e3 D/ {: V
}
4 T- S% b( q* W" Z# k F* I1 e0 E, [' _7 d& u
public void agentStep() {" d2 b5 M9 e1 a. ], |- A2 x! s, f
System.out.println(id + ":" + Globals.env.getCurrentTime());
% y8 ^. i9 [6 d4 i7 y }5 j0 @. N Q6 q7 R' U( U
}: i3 w6 e" Y/ }# z9 C0 A! u3 }/ h
7 I; i1 Y; L K
public class ActionGroupDemo extends SwarmImpl {
. U7 r& F: V. ], D6 K* h2 K ScheduleImpl schedule;
2 H5 D) R2 w- ]7 w! K, r ActionGroupImpl actionGroup;9 ~4 V; |, k3 g5 B K$ l( t2 x6 O* y
ListImpl list;" U; W3 p# e) ?6 G+ L# G5 c
char Id = 'a';
; p8 F1 E8 ?1 y
7 B! u- U/ |8 Z( X3 }9 O) F# ^* u ActionGroupDemo(Zone aZone) {1 X4 g! x' _! H6 j' `
super(aZone);
; ~6 H; w- q% r/ S list = new ListImpl(aZone);
. \7 e2 U4 V G swarmSetp();
" ]3 `* d. N7 S( \* Y0 {. B: c& W actionGroup = new ActionGroupImpl(aZone);. W; ~3 s3 N: {/ e( R
schedule = new ScheduleImpl(aZone);, e, L, i6 S2 `1 o7 p5 G
try {7 x, i8 B' M1 n5 o+ ?* j9 c9 d
Selector agentSel = new Selector(Agent.class, "agentStep", false);8 H2 j* U. t" O7 o
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( K3 F# J6 s$ D3 p8 |* o
; h+ d( J! _6 S0 X actionGroup.createActionForEach$message(list, agentSel);! Q) ^2 i m4 S% _9 u
actionGroup.createActionTo$message(this, swarmSel);
: f& x9 V& Z1 H, h) ` schedule.at$createAction(0, actionGroup);
8 m" }" x4 W" W$ X schedule.at$createAction(1, actionGroup);( |0 t; l9 d7 p( m, F% i9 l
schedule.at$createAction(2, actionGroup);- R8 f& ?$ L9 Q0 F
( Q5 Y$ [) N- c
} catch (Exception e) {
. m$ @: M7 W/ _% P* d: z5 X e.printStackTrace(System.err);% z8 E! R; T8 g% U6 |0 z
//System.out.println(e);! s7 r8 z1 x1 R/ D; X& p5 L
System.exit(1);
+ |; G, C& S. R" R# T }
$ K* b% N" u P- c/ K0 U5 D6 W4 }4 n* a$ t. o! U! x; I1 H
. n( X+ ~3 U" Y9 }6 ~% P. o& d) { }: T+ G l% [. J- T. G1 B; h
, M7 k7 y% x9 V# t7 V7 T; O3 m' `
private void swarmSetp() {
9 [; W- m2 Q) k. f: B4 ~3 c0 |' j list.addLast(new Agent(Id));
, P& }8 v- T0 U, Z$ ? Id++;; r; n0 {# f! z. c
}
6 Q% J; a" i& Y6 c1 ~9 i( } R7 L% O3 n; _9 o7 D
public Activity activateIn(Swarm context) {2 l }7 J3 z8 D. s7 E4 T
super.activateIn(context);
/ z- I3 |- O. X" J3 L: }% J4 f schedule.activateIn(this);% X: x0 P Q$ B* y) T3 N& c
return getActivity();
, i5 l1 c& o" o8 W2 r }
- r2 B- Z% O; j; O0 Z6 Z# A. _3 E/ d. i: K- Q- ?7 {& _
public static void main(String[] args) {/ g& x7 F) S! U# i$ a
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: p0 T- b, m% n1 `4 c" E$ V ^
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* v/ K) s/ ^! S
swarms.buildObjects();4 `7 S7 z; C/ P5 w0 L
swarms.buildActions();9 C1 W2 C% |( E, ^% F5 {6 B$ Q l
swarms.activateIn(null).run();
/ A9 _$ ], y! [& \' Y9 K' F }
2 x1 k1 ^4 X6 y
) Z) c8 V( n9 L: r} |
|