|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" K% w y. m( A5 F7 Y
- C8 z ^ v& v* E3 Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 H& F$ U$ N$ p1 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' X" \8 \2 N$ N" Z" t9 w
swarm.SignatureNotFoundException
$ i5 d& C8 ~0 m& M- @ at swarm.Selector.<init>(Selector.java:76)& O% Q7 H4 {( j9 G9 a
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 J5 L5 q( o% D8 F! q" O/ X$ L at ActionGroupDemo.main(ActionGroupDemo.java:67)7 `2 c# z5 T. n+ R5 p
0 H. m9 ^( D8 k
5 Z% b7 w4 Z! ~. Rimport swarm.objectbase.SwarmImpl;! j) Q/ n6 q- b. q! ]
import swarm.objectbase.Swarm;
2 N; ~' _: h* m: `! timport swarm.activity.ScheduleImpl;$ T; h! D" _' ~6 A/ b6 i
import swarm.activity.Activity;& y0 ^* S2 ?; ?* p8 o- N' e
import swarm.activity.ActionGroupImpl;7 n" `1 [# a" K/ ]5 J% Y l
import swarm.collections.ListImpl;
; a! |5 ?0 W1 Y6 C# k7 yimport swarm.defobj.Zone; / t8 g! o6 f; ]' q2 }+ }9 J
import swarm.Globals;
* q3 p* T+ g4 ], ]import swarm.Selector;
e5 d* y c5 O6 E' M) R1 oimport swarm.activity.ActionGroup;
. h5 e! Q% `) M# O9 P5 eclass Agent {
; o1 }( o+ l: N, m" X, \; f char id;( I" y" x' a' f7 p
. T o j3 j3 H Agent(char id) {+ U2 l! J9 L$ q) K3 D' X1 F
this.id = id;( B+ h4 ?+ U2 ]) _% {/ g
}
m- e/ @" E3 d3 i6 Q: o' X
) ?$ x; J3 v2 z& l9 A8 c" {$ } public void agentStep() {
- N" {/ x' e1 m. t! H System.out.println(id + ":" + Globals.env.getCurrentTime());
& b' Z' R0 t- v- l/ H: _3 ~ }4 H L; o) m0 y
}
0 j9 Z: u, @2 [$ ], p- y8 |# N6 I, A, s5 {7 i
public class ActionGroupDemo extends SwarmImpl {
0 M5 Q' B) H* ]( f$ X! R! O3 n: b ScheduleImpl schedule;
9 V% n/ C' q" y/ ?1 t ActionGroupImpl actionGroup;' X1 |9 H/ x) m! ^. e8 F6 |1 \% Z
ListImpl list;# U; K/ Q3 f. C- d e+ m/ x7 d& K" S
char Id = 'a';# k. Y4 k. q* p: e
; x$ E' L. N. F+ q ActionGroupDemo(Zone aZone) {
* D; w ]1 w3 v N super(aZone);
4 A6 t: n3 z1 o6 V list = new ListImpl(aZone);
* _3 s* K1 {; z! Y swarmSetp();
2 I9 D N! C6 P6 u' F$ \8 ^# B actionGroup = new ActionGroupImpl(aZone);# \# l' S" I0 m& m6 K
schedule = new ScheduleImpl(aZone);
' H+ _1 m) P9 D7 W6 {. Y try {' y4 M- h& y- S( k* k% L( c- K1 ]
Selector agentSel = new Selector(Agent.class, "agentStep", false);# B# J8 W8 d, c: }! O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ d2 b: V& B2 \. k; S
0 Z* z- a% b- _# k) D2 C, ~ actionGroup.createActionForEach$message(list, agentSel);+ N! o3 e, ~/ `1 k' b. E( Q9 P& o' E
actionGroup.createActionTo$message(this, swarmSel);
8 w: @0 O8 W( _0 u( h) D schedule.at$createAction(0, actionGroup);3 S/ a* M; K' y+ W
schedule.at$createAction(1, actionGroup);% z: a% j V/ |+ Z# n# i9 t9 o
schedule.at$createAction(2, actionGroup);* |6 {+ J* y( h7 X6 l
8 B8 U" T: n9 B5 V } catch (Exception e) {( Q# m5 P# A( x9 _& _$ M7 F
e.printStackTrace(System.err);9 a: A) z. J# A& k$ u' x |
//System.out.println(e);9 l; i. @# ^ O9 L$ T
System.exit(1);
q0 J- G* R- c7 o }
9 d" l. x1 z/ L6 o: T
" @ Y8 Y8 A( ?+ z5 s$ A' D4 b7 [% B o$ V q- l4 B
}
9 \ j) e, I* ?# R2 k5 B$ c1 B( A
private void swarmSetp() {- b1 c" j. q4 O7 t" H$ X2 M+ k
list.addLast(new Agent(Id));0 f$ q1 [. r$ A5 a( y Z+ S
Id++;
6 o1 Y5 u3 e, h0 I }
! N' F4 r& ^ o8 y+ S2 \0 k$ u+ E' f7 t
public Activity activateIn(Swarm context) {/ i' W# K- P* @" I
super.activateIn(context);
4 x. r+ v# S' p+ G, }5 p6 v- v schedule.activateIn(this);
% T0 l. k7 ^" G6 W$ w return getActivity();
' R5 N& _- v5 ~' U6 d, A6 s; g# w }
9 P/ P0 R# }" h% l: ?, ?) Z; J4 S% h# q* R. i1 k7 n3 N( y" Y
public static void main(String[] args) {
& `8 n8 E/ v$ Z( `5 C" U7 j1 P Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ c' R) G9 S' @7 e, H# E' W, k8 F
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 o4 s/ t7 i6 o5 u- _! I1 ^
swarms.buildObjects();
+ d+ E/ `% J+ `0 T' K8 w) E swarms.buildActions();" Y; p+ R, q e4 A* b! R/ r
swarms.activateIn(null).run();6 H8 g, ^+ p: J/ G! |% u5 ^: `
}$ j8 ` Y' t* }4 T4 }: q9 V
1 `/ Z# y. F' @, I} |
|