|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , w) b5 X$ g- d Y; F
5 L3 T; I# F3 F, e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 e+ _$ q& l5 Z$ Q5 [0 [
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' B3 T# J; z3 O, I' nswarm.SignatureNotFoundException
) Y2 J# I* M# k( ~ at swarm.Selector.<init>(Selector.java:76)
) {; A$ X% `3 P$ m# G6 P: R4 o M at ActionGroupDemo.<init>(ActionGroupDemo.java:37). |! V3 ^5 B8 O8 z
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; `& U% a' u! ~. @* {
- |8 {) ^9 S% \, d! F, }- b; v) N+ o- r. M
import swarm.objectbase.SwarmImpl;! U* O! p$ j4 z4 T* H+ t+ W4 W
import swarm.objectbase.Swarm;
! q9 u" f5 D9 `( |5 M& P2 Cimport swarm.activity.ScheduleImpl;+ R7 j6 U7 e: z8 L; o
import swarm.activity.Activity; Q4 K6 l, }0 O- L+ A% x( `
import swarm.activity.ActionGroupImpl;; R, N/ L/ w8 W- w* p' n
import swarm.collections.ListImpl; ]7 x6 V) `9 R6 ]
import swarm.defobj.Zone; * [& Q9 ?; t1 Q& G' y
import swarm.Globals;
- [) a% z X" x( _! r7 X( gimport swarm.Selector;
$ x& p& [) S! O4 \import swarm.activity.ActionGroup;
4 C3 S# f; }4 V& t3 q3 L& }class Agent {
0 r& A: ]% C1 B! T9 W j: I6 Q char id;+ B4 l' k$ {! V1 C ]5 t
I0 S- I4 _/ m- A8 I& x$ W! i Agent(char id) { @" Q4 o$ M5 K, p# y
this.id = id;9 k2 p+ c# P; a! K
}3 W5 h) v" m' k4 k! C: Z
# I0 x- l7 F' e$ X/ `
public void agentStep() {
- q5 j, B, x& w, ]0 l2 \: Y System.out.println(id + ":" + Globals.env.getCurrentTime());5 f; M' q/ |% A) l6 q5 J B
}
, E+ f" V9 K9 C# Q: x1 H$ t}1 N' @6 B. o, W. e9 H
9 c/ X% ^! D; g0 V2 m( w7 o/ lpublic class ActionGroupDemo extends SwarmImpl {4 j9 \8 u% j; x/ X \1 F
ScheduleImpl schedule;0 L* H1 }2 Z& ?5 m
ActionGroupImpl actionGroup;8 X" D2 u0 t. u7 O& R
ListImpl list;! l6 d$ Z. D; S- W) A
char Id = 'a';
' ~0 t4 t9 m5 T, n$ {( b9 _% }2 q! S O: L7 V; B! k: A0 ] M$ C
ActionGroupDemo(Zone aZone) { ~+ ?9 D: d# X: _7 P# ?
super(aZone);
3 i3 B- _6 z' z0 B* ^ list = new ListImpl(aZone);. I, C9 a8 w6 Q& F$ T. ^$ h
swarmSetp();
" c i: |0 R$ |# h actionGroup = new ActionGroupImpl(aZone);
% y# ^. `. H# J5 g schedule = new ScheduleImpl(aZone);$ g: t* R0 R% F/ v4 L
try {
5 g7 z; \: Y, t3 f, s Selector agentSel = new Selector(Agent.class, "agentStep", false);% S& x+ |* g8 ]$ f
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) M& m* F7 W$ d9 t+ i' U 5 W1 Q* W0 j+ K0 N2 D/ U
actionGroup.createActionForEach$message(list, agentSel);
2 i/ x4 d9 g1 g* T4 } actionGroup.createActionTo$message(this, swarmSel);
, B, J0 N7 Y8 u schedule.at$createAction(0, actionGroup);
6 \/ t) X5 F% l, [+ n3 N schedule.at$createAction(1, actionGroup);
/ V, B+ V5 @1 @$ h schedule.at$createAction(2, actionGroup);9 `: L' `! C+ ?* c
* k3 S" P& t2 |% ?0 f6 y
} catch (Exception e) {/ @0 j7 N! J! _7 w; h
e.printStackTrace(System.err);; B) h0 D5 ]5 l2 S- F; G
//System.out.println(e);
! C$ {' n" X( d% I! e$ b/ d" C8 b System.exit(1);
) L7 Z1 \% y- U7 A+ @& W# l/ ` }! g! ^% E( ]# {! f/ A! ], u
% E4 P: I" E; z- Q2 L+ ]3 J2 A
* A% k5 C+ ^+ @6 u) |
}! m: K0 u$ U9 b& i* M; [1 l4 M2 X- C
+ G1 n( K7 h$ B2 j# |' C+ d. ~ private void swarmSetp() {/ ]2 Q0 I+ T0 ^. `
list.addLast(new Agent(Id));
" S0 J% ^( n( x9 V4 C9 u% ^ Id++;# n" H# w5 ~, o z
}' S" S0 t& ?0 s7 A& G& z2 u6 `
1 a1 H% D7 i- E( P7 p6 r: t
public Activity activateIn(Swarm context) {" q$ Q0 `& b+ Y- H3 H
super.activateIn(context);* U8 P7 Z# y1 H
schedule.activateIn(this);
6 s2 I( X9 m6 k9 ~0 P6 D( f return getActivity();
" K( i- F: s2 B5 B% u6 E( Q. j3 g }
& w' k( F4 S+ b4 i) c
4 k. E+ F/ r8 x5 Q5 ?0 } public static void main(String[] args) {
" D) n4 q4 h, z* k% B2 v Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; Y- {$ f2 i1 Y: L4 d) g- k- E1 @ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
D. G# D( r$ X: k& M9 l. a. Z swarms.buildObjects();
6 F3 f5 y# ?( S. }1 o" i swarms.buildActions();
) X s' ~! W: V {- } swarms.activateIn(null).run();9 h7 d: s1 X2 g1 Z( n' @5 a6 H" q
}
' j# M1 h# `9 m: ?0 Z" ]7 z3 M8 R# Z% x& B3 D. h) H! y" }) T
} |
|