|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 u( S K* Y& W& g* f9 X" Q
7 g0 {% d; Z9 \, Y2 W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) @! V9 q; T. x; v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
m9 @; v8 i: v2 I" }swarm.SignatureNotFoundException. d) x2 Z3 i5 n/ o. J! i: e! n# |
at swarm.Selector.<init>(Selector.java:76)( c& A( Q: Q9 X: w1 c
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ F! T, b6 x; v5 Y0 s% @* u at ActionGroupDemo.main(ActionGroupDemo.java:67)
& @( ?# q7 A% b% |' t0 r0 _
4 J$ l2 X! O- Q2 Y/ w! ^7 x
: T' N4 n8 |1 E- cimport swarm.objectbase.SwarmImpl;' B% t. G$ p8 I$ e! c
import swarm.objectbase.Swarm;
4 M2 p5 S+ l- H5 E. E% Y6 x: Uimport swarm.activity.ScheduleImpl;
5 v) y2 ^* `+ a3 Vimport swarm.activity.Activity;6 U: R5 Q$ R$ p: D* X4 Q1 J9 U! n
import swarm.activity.ActionGroupImpl;( K9 u6 ~7 t8 m W. o4 k) F" c* e2 R
import swarm.collections.ListImpl;2 `. `( X# p" a: G n
import swarm.defobj.Zone; ; w' q5 Q0 A) Q4 M* b
import swarm.Globals;
, K0 s/ u& D1 U) D+ G3 d# v1 n/ {import swarm.Selector;( A# E5 r+ `' H# V* A
import swarm.activity.ActionGroup; 1 h( U: x; m1 }9 G$ r
class Agent {
& T3 @" l) o& J% J% b char id;# H& M! P8 h7 ]) Z( W$ O, v/ O" q
" M$ [9 r/ k6 m- R. @
Agent(char id) {
" ?% ]% ^1 s2 i! ?' O this.id = id;3 l6 a6 K# f! X. ~1 v
}
+ F5 e1 e- f. E& l* H% M0 t. L2 R/ C& t4 b7 k# _
public void agentStep() {# v1 l; `$ {% j( x
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 i) c# L0 k, c( L+ w( Q, x9 r }
; m2 R) M9 W. A6 Q/ d}
0 J2 ~! U, \1 m7 {7 b) v) \
- o7 O1 ~" m$ X$ l" I. Spublic class ActionGroupDemo extends SwarmImpl {& f7 }# S2 I# [" g
ScheduleImpl schedule;
* |8 M6 L# z$ S( l. `- ?# F1 L5 y ActionGroupImpl actionGroup;' Y1 m* h; \4 q
ListImpl list;
4 d( N; W+ L7 G0 H& L9 C+ f; D char Id = 'a';3 Z: J; H- _5 L& ^) Y6 {
1 u1 s$ g& T7 R/ R& b! k% j X
ActionGroupDemo(Zone aZone) { ]" x9 i5 S1 Y3 F+ b
super(aZone);
' x6 H2 V/ f9 W$ _$ z list = new ListImpl(aZone);# _+ T3 N$ S# g( o
swarmSetp();
, c* ^# {4 O% n" {+ w* w( a$ u1 |2 c actionGroup = new ActionGroupImpl(aZone);
O3 Y9 A) C# c! O6 H* H1 c, T schedule = new ScheduleImpl(aZone);
0 F' Z0 ?1 D" W' E5 E try {
d1 j. H# y4 ]$ k8 ~ Selector agentSel = new Selector(Agent.class, "agentStep", false);
# ?* a; N7 g7 u8 ?# s: D Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: k* k7 U. g8 ?) H |
+ W6 o: u- o3 R7 w9 _* h% W actionGroup.createActionForEach$message(list, agentSel);
" |2 S2 {3 |. l% B) f actionGroup.createActionTo$message(this, swarmSel);) i4 g2 |! C5 R! l- x
schedule.at$createAction(0, actionGroup);' J" K) _' B/ A- b
schedule.at$createAction(1, actionGroup);
8 V3 Q0 R3 @- N" ?* r schedule.at$createAction(2, actionGroup);
( E: S& K1 J# Q' P% }. y) F- F; `0 A
} catch (Exception e) {, M9 G, s7 v7 f3 e& q- i& L/ D6 a
e.printStackTrace(System.err);9 P# u H- a4 { X8 o: y+ y
//System.out.println(e);
9 t0 h" ~% E3 l1 P( ^8 R System.exit(1);* O- `9 D( P# D& t$ X
}$ i" m0 S9 P, z
9 `: N% t# X+ g( c! I7 Y/ c: |
# Q9 c5 t, u7 ~9 `- a }& b$ {/ T, S* m8 k* ?9 g1 B% W
5 v& C' `# c3 L- x, a8 c private void swarmSetp() {
: k- }- |( m7 x: h3 j) N7 o" w2 p list.addLast(new Agent(Id));5 W1 a+ f K Y' K. U! c
Id++;
2 F$ O8 [+ X5 e4 o- E1 ]5 I) g }
' R- ]6 W) y6 g& G) ]
[1 B% ^7 j+ I( y2 u: k public Activity activateIn(Swarm context) {
' c" \) j2 v: |0 ^8 t super.activateIn(context);
; @& e* b* i5 a1 \2 Z; I( ?* b schedule.activateIn(this);
4 E7 ]& J N; a* i4 U1 y& b return getActivity();
9 |% c* A4 D: d. c n }! }9 k- m/ }4 I2 ]/ C! O* @
. a* j- f/ c9 C* N$ l public static void main(String[] args) {
; S' x) m9 t& @ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 A# i" G7 a+ o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); Y. k/ n& d: j" z
swarms.buildObjects();. F) U* j! Z7 x! ^
swarms.buildActions();' e) ^5 h6 [& {/ y9 x
swarms.activateIn(null).run();
1 N# x$ m P+ n% i" d1 e" ~/ w } s5 Q) N% e' g( i& G# n
- c; S6 `# c. T4 I} |
|