|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 v5 S/ R, Q# n$ ]
8 K$ z: Q. B* [3 g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 g2 M: @/ r, A- j8 n
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 B; Q0 G! Q: ]" ^
swarm.SignatureNotFoundException
/ ~: ^, p E. x5 x/ W( Q at swarm.Selector.<init>(Selector.java:76)
9 h& Y% m a: J+ O5 l$ d* Z/ y, M' A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( O- o7 Q. l" {8 _ at ActionGroupDemo.main(ActionGroupDemo.java:67)5 d+ F+ O4 @4 f+ m2 _" u4 N* p
, _ M+ a- {! ~
/ u! S4 e, h: q8 f* V- eimport swarm.objectbase.SwarmImpl;7 r& A1 u# ~( }
import swarm.objectbase.Swarm; t( x8 i: \ r5 c6 K+ ? N
import swarm.activity.ScheduleImpl;
! Q5 w8 ]3 o2 zimport swarm.activity.Activity;
; |) e: O9 l( C% Z0 m% n/ [1 t, Fimport swarm.activity.ActionGroupImpl;
0 s/ A" L( t ?; ximport swarm.collections.ListImpl;) r ]2 F& p; `! Y$ ^% _
import swarm.defobj.Zone;
( X. Z/ v) a4 }( `( @8 ]# `import swarm.Globals;0 Z0 k+ U1 a/ _1 B8 l3 ?
import swarm.Selector;
0 `3 b6 z. x3 M" ~import swarm.activity.ActionGroup; 5 \# m, r+ ~+ h' U' f9 z
class Agent {
. W/ K, t) k' q. C5 a char id;
( O% g2 s& T) x& ?* J/ L6 D- f$ I2 d; q/ N' Y& p$ x4 F
Agent(char id) {
# K- E- g- t% P: M' g! l3 \4 n" l this.id = id;! V: `7 x% e+ x1 v1 @5 N7 b0 s
}
5 f. J/ I2 p# x) W# k+ ], U7 M Q, Q/ A8 M ^9 x1 l
public void agentStep() {& @/ Z, z# Y4 Q. o% o; a* {
System.out.println(id + ":" + Globals.env.getCurrentTime());4 p, u6 M+ [- ]8 k2 y. |4 N2 ~
}
" ^; P1 I! ~! {* w6 V}# v- ~0 w+ b: t
4 @) V, A% z8 ^/ s% c U# Gpublic class ActionGroupDemo extends SwarmImpl {
2 k- t- A3 ^1 y% n; N# q B ScheduleImpl schedule;9 Y. p+ N& x, C' e& \
ActionGroupImpl actionGroup;
9 R+ @! x& \8 L& e* k- p ListImpl list;
2 l% x: [0 n* s! G' f char Id = 'a';9 ^8 Z7 r, Q# A; Z. K0 K }+ W
7 [4 Y3 I+ x" r& v5 H3 ~ ActionGroupDemo(Zone aZone) {5 B5 P/ O' F" |: Z: _7 Y0 |$ o4 @
super(aZone);
1 c" z, x4 m/ \* i list = new ListImpl(aZone);
8 C* a6 C( F+ g) F8 f swarmSetp();: y9 F! ?% a+ Z: X
actionGroup = new ActionGroupImpl(aZone);
2 a3 M4 B: ?6 W B schedule = new ScheduleImpl(aZone);, x3 i# R$ m: B5 v% m5 v/ n8 N
try {
0 r! w" T; s/ k! i% w( w4 l Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ l* i# D5 a1 }2 N! a% Z- z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 z% K2 n$ _9 M* Q
6 }$ n; ?$ i1 s actionGroup.createActionForEach$message(list, agentSel);
& w8 l. c: g/ X6 V5 ?- O8 y actionGroup.createActionTo$message(this, swarmSel);
y+ d* Y* F3 ~7 H- T) d schedule.at$createAction(0, actionGroup);
, W1 I1 Y; Z: b$ c$ `. }- n" Q: P schedule.at$createAction(1, actionGroup);5 _+ ]6 T/ s( f0 }
schedule.at$createAction(2, actionGroup);
4 i1 U, K+ L, A V( M2 ?* \/ v6 R7 e7 F/ Y% H
} catch (Exception e) {/ s+ ?+ r! D8 j9 x8 t/ A
e.printStackTrace(System.err);
/ ?- X. w# p- C6 [ Q; e6 X //System.out.println(e);
; `/ p! W/ x; I3 z8 H( Y$ t0 @ System.exit(1);6 j8 b6 ?9 k$ p! j4 ?5 y
}- |: L1 s! u, U7 o: ~/ n5 l7 _, [
% G+ i7 S. U+ q2 O5 J$ a
/ M1 {: F2 n) x! G: [ }
" B: [) r9 F$ r0 A" y2 v5 O1 e
" P }1 [+ q B. Q* c3 t. ^ private void swarmSetp() {8 [1 ?0 ?/ C9 e
list.addLast(new Agent(Id));& |6 J; Z+ X" T. Q- D5 b" ]7 n' c1 R7 |
Id++;* e- c7 q0 G8 w: b- m7 L5 C
}
8 F+ i9 H4 g$ P6 m$ X1 U# G4 [* u4 j: l
public Activity activateIn(Swarm context) {, y3 j1 C! Q% Z; M6 Z/ R7 o
super.activateIn(context);# W& I+ D0 ^$ t2 V0 P
schedule.activateIn(this);2 I7 W& F3 H/ h' @+ b% N6 T1 N
return getActivity();
1 J, Y( h# s/ b$ V0 _3 {3 y }
. ~) p. H8 [' L" q/ l6 l
9 H7 ` E2 ]9 ^ public static void main(String[] args) {
5 q' R) q' l# ^% x7 p1 o Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 }* E- h& n5 t: c Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* e0 N' `) b. o* L/ U5 K- ~
swarms.buildObjects();
, y7 p/ v0 D0 G: u swarms.buildActions();
r! i- [' m9 V0 ^5 y, s9 ~8 l; b swarms.activateIn(null).run();- B: c+ d: E3 Z% X [6 H
}
4 }2 y1 O' q2 ?. t# ^6 ^ I0 n5 O
} |
|