|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; o: Q3 }9 }; n% f( ]# p2 f7 [! }7 B/ v$ L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- g2 i" M4 v( ]$ W& H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& W; D+ Q- E& T0 z" r
swarm.SignatureNotFoundException; t# |# Q. S* ~% D N$ k& J
at swarm.Selector.<init>(Selector.java:76)
3 g' x8 i+ _. @$ ~5 P' g7 Q0 b at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, h3 R: x4 s; ^9 j0 A) N- ~, _. H at ActionGroupDemo.main(ActionGroupDemo.java:67)7 e, l1 `! ?$ [2 v
" k0 }8 A# E4 G9 @1 M& D. C+ ?/ e$ X5 i1 o
import swarm.objectbase.SwarmImpl;
/ n2 D2 L: J; Ximport swarm.objectbase.Swarm;
/ I: c( q2 x5 _) nimport swarm.activity.ScheduleImpl;- _. n3 H! F: X/ J& f9 h8 r( f- Y
import swarm.activity.Activity; f6 G. K7 k2 e, ~7 l
import swarm.activity.ActionGroupImpl;
& b& Y8 E! e$ }+ Jimport swarm.collections.ListImpl;
- t i/ A2 |) G/ Simport swarm.defobj.Zone;
9 j9 P" K+ B$ \/ E! i" Zimport swarm.Globals;/ J0 j0 s% |2 g+ ]" m: T
import swarm.Selector;
& A f' {5 {( u) S/ p! ximport swarm.activity.ActionGroup;
; {) G& n; ]9 f2 ~& k( ]class Agent {
4 N% t: K) C; d3 B; v V char id;6 ]5 T. Y/ Q- V; Y5 K( Y
/ R# T: P' ~- S% B+ G0 } Agent(char id) {$ u3 ~0 X/ U" \8 u. C
this.id = id;+ I9 j! S9 R/ b0 _
}
/ }5 u# k4 p4 o* U) E |" h9 O7 _9 d) c K0 N. D* |# l1 b
public void agentStep() {
, B r2 n+ R( s1 z$ i System.out.println(id + ":" + Globals.env.getCurrentTime());) d5 f: H- V$ z& ^4 V; V9 t
}8 h- K8 Y _0 y! Z4 \
}9 I# w* e# I1 B5 Q7 V
$ D% o4 g: E) @1 n. N3 Qpublic class ActionGroupDemo extends SwarmImpl {+ _' d6 v S% I, @+ h7 T
ScheduleImpl schedule;
5 S1 l: p% c9 p5 ~# z% T ActionGroupImpl actionGroup;
2 [( j+ ?/ _5 @ ListImpl list;3 ^% i; N6 E+ l) d; ^& Z' y( E( e
char Id = 'a';5 ~& C' Q- \; [: J
# x- H. c" N# b+ I
ActionGroupDemo(Zone aZone) {
6 G4 R) v2 B/ v* [ super(aZone);0 T, ^8 f; E3 z% @" j
list = new ListImpl(aZone);, w3 b0 X; G* Y# T& f4 I3 p7 y
swarmSetp();7 W. v, a5 e; w1 n& K- L7 D
actionGroup = new ActionGroupImpl(aZone); ^3 p8 l2 i% Q$ D! J( o
schedule = new ScheduleImpl(aZone);) h4 u$ a2 {' [) @ _6 s3 f9 Z7 e
try {
/ S8 F7 R" A1 E! U! m6 |# S Selector agentSel = new Selector(Agent.class, "agentStep", false);6 `4 O; P, ^5 v1 e
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 |) a4 u5 F: @2 A6 Z% [! ]
- b- a/ x% Y* m4 L3 E
actionGroup.createActionForEach$message(list, agentSel);
1 y9 S( h& j9 h2 k4 Y6 T actionGroup.createActionTo$message(this, swarmSel);
8 G- J( A0 {: j% b3 E; ` schedule.at$createAction(0, actionGroup);" h( N3 j- t# C; n2 O
schedule.at$createAction(1, actionGroup);
$ j1 J- R- j: a0 _$ s: ] schedule.at$createAction(2, actionGroup);; F9 a8 M+ ^7 V) g, t# s4 ?
# ?, o8 L3 D/ d5 t O } catch (Exception e) {
. H @; {/ O+ T e.printStackTrace(System.err);7 q" S. }2 J- \ ]" K4 k2 O
//System.out.println(e);
& w' e9 p {% T System.exit(1);
3 o E8 G- P, B$ t$ S6 `. a }; J0 N8 k3 V$ I- {2 A5 M9 {( M
8 B# c- ~$ e3 k$ j4 K# h0 R2 t2 K% _; s3 s N* z! q
}
o1 d6 |6 |2 O. v. x6 n# H3 C) C" x
private void swarmSetp() {7 a* j4 V3 B' S! s; Y% x& ]$ W
list.addLast(new Agent(Id));
- ]* `/ K$ N) ~ Id++;
7 [/ E6 o7 e# G7 r! ~ } q9 L q8 Y) I0 P. ]) l; `
; J7 m1 r7 v5 [- i5 Z. n+ h( ? public Activity activateIn(Swarm context) {4 }5 Y, e/ X8 o) P- T) A0 T$ Y
super.activateIn(context);
4 w( N5 r0 {8 E" O1 F: @9 P u3 E schedule.activateIn(this); N$ P* _' e6 a( C0 p
return getActivity();# T- ^: M0 e1 ^* e- q
}7 j$ m) A7 o4 k3 r
& a) \" t, o( n" g
public static void main(String[] args) {: u8 k9 t' S( V7 w6 D
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' B, o, c- o; Q- ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! u3 @0 f' h, j) A1 h; \
swarms.buildObjects();
" Q( [% N7 `% q+ [& q: v swarms.buildActions();
$ V0 [: L2 j# C) a' E' r swarms.activateIn(null).run();
* D( A1 w6 N% o" v! d }
0 W$ F- q4 R0 Z2 v( \3 `7 ~7 @' Q% |- _- a2 M# k. Q, o! y
} |
|