|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& K( J) }; g, Q* B
5 {$ x9 S$ l' _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( ?0 w5 C( w7 ]4 u* I8 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 u5 v1 F" T+ m5 m' @swarm.SignatureNotFoundException+ k5 d3 n4 G8 X1 l9 B8 ~
at swarm.Selector.<init>(Selector.java:76)* m; Z: m: D; T4 [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 Y0 X* h+ _, e5 e! S7 m
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% `0 V$ f8 ]# c
5 a8 u Y* d% h; P+ b5 M# @1 V% ]2 o. J
import swarm.objectbase.SwarmImpl;
. @! ~. ^' V6 ^3 U9 k1 n T0 Z, I! limport swarm.objectbase.Swarm;
9 q0 O: R* x& g) h( Bimport swarm.activity.ScheduleImpl;5 w/ }- F7 l0 L6 s* i5 J
import swarm.activity.Activity;9 U/ B5 o( V3 c; l
import swarm.activity.ActionGroupImpl;
8 W% W7 X/ k/ |import swarm.collections.ListImpl;3 G# e% }! |$ x9 [
import swarm.defobj.Zone; ' V r% ~$ \8 H9 U7 S
import swarm.Globals;( R9 X) k1 e* X, K" L6 X
import swarm.Selector;' v* ^$ J( B7 A3 S% P: m
import swarm.activity.ActionGroup; & x; h- G1 b: K) ]' \
class Agent {/ |/ c1 F6 F! C4 o/ P4 g9 U P
char id;
( }1 z! }; O' v1 Y" Z
+ b$ [( `1 X1 b: m a Agent(char id) {9 q& L4 c* w+ Z' Q$ [
this.id = id;
- i0 Y0 S# D: F }
$ @/ ]' `, S$ p& ~1 z8 v: n$ V7 w3 m7 _/ a" e
public void agentStep() {
2 f# P! @+ F) a& ]2 [$ n2 \ System.out.println(id + ":" + Globals.env.getCurrentTime());4 u7 |' e" W# w) e
}
7 S6 U4 W) Z) P% |( p& m$ o. @}
7 u9 O/ ~2 f$ F( Y& S* F
; B$ b$ w+ q- w5 n% y7 o; N4 M. I2 ~2 tpublic class ActionGroupDemo extends SwarmImpl {
# _4 F# U, X% K6 r ScheduleImpl schedule;3 f/ u' O& U5 [- i4 \0 v7 r
ActionGroupImpl actionGroup;
5 m/ w m' ]+ Q' c& m$ W5 ^ ListImpl list;
, d4 E- t8 p9 Q# A5 ? I char Id = 'a';
; k* W+ t: `1 L2 t3 X
0 M2 Q4 _2 o! v* P1 z5 H ActionGroupDemo(Zone aZone) {
( J9 `0 ^+ I* N7 ?9 o' l" W super(aZone);3 V) I6 f- [4 A7 r
list = new ListImpl(aZone);- a- r- F; F! N2 G+ a: {! t6 f
swarmSetp();: n, l( x) V# N! F4 Z
actionGroup = new ActionGroupImpl(aZone);
) |8 I7 \4 Q9 i5 h9 l! ^. S schedule = new ScheduleImpl(aZone);, F) f( G) U# z4 ]9 V
try {
2 `1 t" u7 o7 ` Selector agentSel = new Selector(Agent.class, "agentStep", false);
" k: ^0 X4 I( A/ i9 N Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# G: A" o7 S( ]& d" V 5 E9 s E5 {3 C
actionGroup.createActionForEach$message(list, agentSel);
6 R8 Z* U, ?: j8 C: e actionGroup.createActionTo$message(this, swarmSel);
5 w/ J K- R3 f" R# X9 [* k/ p schedule.at$createAction(0, actionGroup);* ~, V* W) r, t" L- a
schedule.at$createAction(1, actionGroup);% R) F; C: W5 ~' A8 \( J
schedule.at$createAction(2, actionGroup);% w: Q6 M# g7 H9 j& w
9 ~' M% V8 O/ a* ^- x } catch (Exception e) { C- B! q1 u9 G. A+ M
e.printStackTrace(System.err);5 h& s, ~; I0 p, i
//System.out.println(e);
8 h5 S \2 ^) V$ N7 V8 q System.exit(1);
5 P; K+ `( J1 W8 ], r0 r }
7 h& |9 ^3 D& o. t Q4 |, r, N" \2 D1 h$ y- ]$ y2 Q
2 ]# Y+ }; x3 N8 `0 n0 ?# g4 a" _# l
}; a; O! A6 I1 s
# ^' U% s. H/ |: T private void swarmSetp() {
1 G n" b# Y2 L) E& C$ Q list.addLast(new Agent(Id));
H: w0 ^- g/ y3 ^1 H, K2 u* t Id++;
( ?; x. U R$ P+ K; r4 L x }% i4 W6 T; N* B+ a7 ^* \& }' b
# Q' H/ r* l! G H2 X) r9 g
public Activity activateIn(Swarm context) {# m* x6 q) C2 S/ ^8 X8 ?
super.activateIn(context);
6 c3 x: h% g5 o+ Q( U) _) {0 Q schedule.activateIn(this);
: r. A2 [2 H; k7 {- b return getActivity();
7 E# o( p2 ~- {$ ?! L( [6 Y* O# l }
8 ?7 c& o. @+ c. L& N
( f3 O3 V9 t' y# w public static void main(String[] args) {( o- t' @- w5 p* C/ P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ n0 V' A$ v$ [, C' k& X# b) I$ J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' L# B+ K. d S ^# v swarms.buildObjects();
: k) h% v4 o0 } k$ c- ?. C swarms.buildActions();2 a f" t |7 o1 V: E3 g9 E
swarms.activateIn(null).run();8 @! W' v4 u& b! s
}
, x' x: I" C/ }8 Z1 B5 D; `- d, i. a9 j- `" c& X' I7 t
} |
|