|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ z) W* g4 X( G2 n, k# D
- t) c! G4 U+ \) s+ z! q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 `$ m9 \* D, f: O6 {
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) X% O- C3 N- f: n/ J/ `, \& Yswarm.SignatureNotFoundException$ _) d4 `; m' {, q5 @0 X
at swarm.Selector.<init>(Selector.java:76)- a7 C' P& [, a; t7 d' l% c
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 Z+ i0 ^0 V3 c$ O4 |- q0 t! V
at ActionGroupDemo.main(ActionGroupDemo.java:67)
u1 D+ }$ k4 B& n% o2 m, I1 D0 w9 {2 v, L( F
2 Z3 H. i/ P' ~! C; M/ U# i5 u; l
import swarm.objectbase.SwarmImpl;* ?9 M4 }6 z. `7 J& T
import swarm.objectbase.Swarm;
" ~6 J& l1 z S d+ D( g6 oimport swarm.activity.ScheduleImpl;1 d+ i* b% a h) e- }3 l
import swarm.activity.Activity;3 U c4 k: I4 P* d
import swarm.activity.ActionGroupImpl;
/ R! b0 a6 E' w! W: {9 C9 C8 aimport swarm.collections.ListImpl;& e7 h- o# a4 V; _& S% U1 l+ _
import swarm.defobj.Zone; 3 \; y4 X' B% r9 p2 m' j( V9 T% B0 U, E
import swarm.Globals;6 L/ [; V6 W* Y* l' {1 ~% c
import swarm.Selector;3 M/ j8 O0 R; |, g4 t+ c6 o
import swarm.activity.ActionGroup;
9 h7 U; A1 M5 q- h- jclass Agent {
i2 p& [% G2 g; C char id;
6 a0 S# C. I3 p, Q9 f+ b& v' i7 i- V7 J" z0 R* r: ?; Z' N" m' e8 O5 O% l
Agent(char id) {6 Y% l B6 k3 n, g, [: V8 f, l" F, c
this.id = id;
/ A4 U% m5 m1 V }6 y: J3 X; M! n# Y. v$ c, @6 p
5 e: W5 y- @8 p l" [/ C public void agentStep() {
" N& G- B6 K4 T) I7 ~6 C, f1 Y System.out.println(id + ":" + Globals.env.getCurrentTime());
p' d" B$ b# x! m) S2 ^3 p; S }6 I+ ^7 q4 b( R9 A* z. A8 Z9 b3 J
}2 |( H. c# m' b& B1 R+ U; k
$ e" ]9 h! J# K! wpublic class ActionGroupDemo extends SwarmImpl {; K+ T1 ~" j: i9 V
ScheduleImpl schedule; T9 [3 ^5 i% o+ ^; K5 ] k
ActionGroupImpl actionGroup;2 h9 A4 |% O9 g
ListImpl list; D# E) P1 F, w9 W: ~# H6 F
char Id = 'a';3 X }# q! H/ N* _* A$ e
7 J8 D5 l! L5 @: l; ?( `% I8 |- e3 }
ActionGroupDemo(Zone aZone) {8 _" b( Q* q6 } Q6 g% I' U
super(aZone);! ^# P7 e7 l3 F8 B6 B. t
list = new ListImpl(aZone);
( _2 M; I. c6 g) l swarmSetp();
% p/ ] ]$ g; c1 a @5 J7 q: c1 @$ [8 g actionGroup = new ActionGroupImpl(aZone);
/ t) b8 P0 q/ i+ l schedule = new ScheduleImpl(aZone);
: i* I) v% @% V2 b7 R9 O try {2 ^: u( {( Z# O+ n. f6 l& Z
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 r1 `0 g! D+ `9 }( s8 A( D) A
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& j( @/ q! ~& d6 ~# ?7 P
; d8 U( ^$ L8 F/ T actionGroup.createActionForEach$message(list, agentSel);, _4 }( ~% H; S+ G
actionGroup.createActionTo$message(this, swarmSel);: H7 @! q Y/ I$ H$ q( \: f8 E8 h; ~
schedule.at$createAction(0, actionGroup);0 v- }: F; q p, _% l5 j
schedule.at$createAction(1, actionGroup);+ U" n+ k/ l+ A/ Z
schedule.at$createAction(2, actionGroup);
7 @8 g F9 r2 ]" n# h1 t1 @( ^! d/ S% e
} catch (Exception e) {
( ?4 i6 A7 Z# Z8 O" s2 w9 b" X+ P e.printStackTrace(System.err);
0 }5 X" w! Q2 ?) c //System.out.println(e);0 R: @6 a3 H' Q$ r. B; ?' A
System.exit(1);
( T) N9 l. e: P( V! Y% g4 P }7 E2 G5 h3 `2 ]
8 i/ G( r1 T6 u- {$ ]
$ v K% D& W6 O# x% o2 H1 h% }/ d }
P/ j- X5 t8 z; ]# R8 E& k/ h1 l2 U' \2 q- \" f- D; l7 o
private void swarmSetp() {
c5 _: f/ |4 q2 Z. F: B7 a1 ^ list.addLast(new Agent(Id));
# b8 T% H3 ^% \0 U5 @ Id++;: o j7 G9 t: b7 q- a: r1 Z
}
( f* V/ W8 i0 Z# _6 g* k9 z ~5 m: n, [
public Activity activateIn(Swarm context) {
: r; Y: F5 Z9 k8 ^( q super.activateIn(context);
9 i+ Q) Q6 B7 f3 v schedule.activateIn(this);
2 @% l) ?* P2 k* ]: V return getActivity();9 p) Y# H3 `' t: v
}
# P/ W5 Q1 S7 Q/ @$ z
0 g, k: i% w( n; e public static void main(String[] args) {
: g$ m# W& @# A; y' |' e- u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' \! Z! p7 R6 \6 O; C
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* U0 H/ f$ c2 [8 _5 u
swarms.buildObjects();
" p7 D. ~: d$ P2 x* E E# L swarms.buildActions();# Z( F2 K/ W2 |2 T m
swarms.activateIn(null).run();
! n/ t& D( d5 m* V( x- q; r( \7 Z }* S: l7 D1 i& y+ Q* T4 r+ k
3 Z/ I- A$ M6 J' R; J3 T} |
|