|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) b0 s% d; {) v
, j% E: v# L" l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, m7 j5 \3 ~# Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' t+ \) H% q7 G$ x) @
swarm.SignatureNotFoundException
8 ?" N! B8 n$ A( N x' a at swarm.Selector.<init>(Selector.java:76)6 N2 e i, f* b6 R$ k( |
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# y2 ^6 |7 C% ?3 r
at ActionGroupDemo.main(ActionGroupDemo.java:67)! m# N1 `- k# O! Q) B0 }* [
9 j0 i( v/ Y+ Y3 F2 U
( N/ b8 O1 d+ o. }import swarm.objectbase.SwarmImpl;7 |* l1 E0 S* l& y: U
import swarm.objectbase.Swarm;
, a+ w% k1 v6 [ Limport swarm.activity.ScheduleImpl;1 G" {0 o) z8 `" w8 B! T- j( V
import swarm.activity.Activity;
9 W% q* D2 k, L4 R& dimport swarm.activity.ActionGroupImpl;3 v# s6 k( P2 W& Z4 v* F7 r
import swarm.collections.ListImpl;) T! ?, y5 ^, f% B {
import swarm.defobj.Zone;
9 S- T* j: c' z2 rimport swarm.Globals;9 K; p- `# ~% q
import swarm.Selector;
! u; o3 v5 M7 E. Y( ^) \import swarm.activity.ActionGroup;
+ z6 h! G% H& j. _& Q: oclass Agent {. u% N) v P* D+ z. Y. U4 A n
char id;3 n' n8 V7 D) \* a. B7 M* S1 b
( f5 n; E* B; K7 |, r, T' Y
Agent(char id) {8 g: y# K) X5 v' O& F1 g* e
this.id = id;
+ m: c# J' j9 ^, J }
i6 B. `3 q+ e1 f6 @! ~( P! I2 W
public void agentStep() {$ `6 B" h) C: \% b3 j; I& [8 v! y
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 A& l) g" F% `% }3 _5 }5 e T J }( M5 I, a- g( D- j
}+ h' K: B" n9 D5 T% M6 B& E
; f+ ^! l' z4 l Z; G! q1 u3 k
public class ActionGroupDemo extends SwarmImpl {
+ y, _1 ]0 K. G% F" X8 o ScheduleImpl schedule;0 Q; y% ^7 E6 E1 J
ActionGroupImpl actionGroup;
0 W2 z6 S$ v3 V7 g$ {$ ? ListImpl list;
# F v6 q( o' W4 W char Id = 'a';
% }" W% c$ q; N; d* Z# c/ u8 I h4 j% |: B
ActionGroupDemo(Zone aZone) {8 B* Q8 m3 V1 x- o' W1 [
super(aZone);
Q4 b$ n$ [. d9 @( L' C( \7 _ list = new ListImpl(aZone);
6 C x- e* i! k- x; |& X" [2 u swarmSetp();
: A3 c5 V. U& L actionGroup = new ActionGroupImpl(aZone);
2 Q' a6 X5 B. C% ~ k' t schedule = new ScheduleImpl(aZone);
5 f# N( g6 l# l# a try {
5 a# Q4 m7 v5 l4 Q2 z Selector agentSel = new Selector(Agent.class, "agentStep", false);( O# n9 m* O, f7 p8 d& I
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ Q" @, X: c8 Y8 a% k2 \
( T1 F- W0 i6 {6 ], _: h9 o actionGroup.createActionForEach$message(list, agentSel);1 Q! `/ v1 r: `: |0 F$ F. v1 ?
actionGroup.createActionTo$message(this, swarmSel);
0 M8 Q: _9 w! V( b: [* F schedule.at$createAction(0, actionGroup);4 l5 b- t9 f! u9 z) Z+ G* J
schedule.at$createAction(1, actionGroup);
( x" W0 E8 g6 j& [0 Y2 A' D schedule.at$createAction(2, actionGroup);* I R% }! X1 i$ |
! A/ H$ W/ K% q% |7 q# K } catch (Exception e) {' S8 x* C Y5 E3 r0 K
e.printStackTrace(System.err);
' k) C* [, M4 q: h% a+ K //System.out.println(e); H5 f' X) }7 ]0 P3 M
System.exit(1);( [4 i {! }& e$ w G
}
, y" B9 g; q* m! E9 I4 I+ R: B: H4 f2 e6 L" p4 G: S1 C, E
! }$ V! n3 {+ t/ U }
# a4 F! a/ `: z! ^5 O) x; M5 J& K u/ @ j: x9 A. ]% G1 c
private void swarmSetp() {
/ y3 D9 d$ X0 s j6 A4 u9 }" q list.addLast(new Agent(Id));
/ S0 f5 U& T. }3 B' Y6 _ Id++;
: {. X# V1 B6 F8 ^# s0 O, u }" D, O3 {$ P; [& G2 b
+ Q$ D) z2 ~% p& }8 S public Activity activateIn(Swarm context) {) w) R: W+ t5 Q' D! [2 e2 Y: T# _
super.activateIn(context);3 Z% q$ ?! Y3 ^
schedule.activateIn(this);
' X0 N' A6 j0 @% r8 X) A4 T return getActivity();% O2 G" J( @7 }& h3 {" F
}
" H% z" K C7 p1 P7 J* u% M- j, S1 S9 H
public static void main(String[] args) {( E4 o+ w4 r* B
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: x" T& L/ i2 I Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 w- m$ M- C! ?/ E% j ` swarms.buildObjects();5 Y4 p4 S* p5 |2 H
swarms.buildActions();
4 l1 A0 i+ x6 j6 k swarms.activateIn(null).run();
" T. D1 F2 f$ F4 x# W) a. p }
1 T6 w, A; [! K' C, s* X' W' }$ J' X1 A- Z9 Z, V
} |
|