|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' T. ]% q& Y, _& q/ u+ S6 U+ ~$ w5 j5 @/ r/ F+ S3 D* e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; M7 g" C7 j! a! H6 \! j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! j! F7 G% S- d7 t1 d' z) q
swarm.SignatureNotFoundException' c. ?' m5 F; V! p- P
at swarm.Selector.<init>(Selector.java:76)
8 s: q5 P+ X6 r9 ^% M& m5 c at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' Z6 ~3 S2 q* j9 o, O
at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 u8 x# b6 ~" ?& F1 C+ Z$ X2 x7 c2 G5 t/ _, l: I
7 R" ` U3 m1 h& v
import swarm.objectbase.SwarmImpl; [* M6 Y2 B+ O2 A0 [% d' V
import swarm.objectbase.Swarm;1 j4 a0 s/ D# l3 h- l5 T
import swarm.activity.ScheduleImpl;' B( w9 V: e7 K7 [7 q
import swarm.activity.Activity;
* e( }8 z1 }7 [import swarm.activity.ActionGroupImpl;$ ~1 b* \6 r6 h5 X4 P) j
import swarm.collections.ListImpl;
! Q/ e3 f* `( W% ]0 g6 I7 [import swarm.defobj.Zone;
% J4 y* v8 G& Z$ j* ^$ N8 Kimport swarm.Globals;5 u/ n: ~4 v& A2 p0 }2 c0 U
import swarm.Selector;
, j" ^7 N1 R6 j$ g" T; O9 C* ]import swarm.activity.ActionGroup; & X/ v1 l5 V0 Q( w
class Agent {
; `* L+ n! ]2 w( Y char id;
. Y x0 u+ `" s8 ?. a1 k1 ~8 d
; x+ P# V: h, {: f Agent(char id) {7 H' y$ c1 j% f
this.id = id;
, V3 Q- c- J# d8 d& K& T }
! g) \) e/ P! \1 g" O; [4 x* @1 l/ i. j7 P" K8 r
public void agentStep() {& x& O. E* S2 A* P3 s4 [
System.out.println(id + ":" + Globals.env.getCurrentTime());! Z" k% I& S- x2 j) t. E
}; u. Z' p& ^& |. H# x/ n" B8 {2 o
}! X1 i, g0 S4 x' I H6 f- t' f
5 ]/ d2 a: H6 U2 u
public class ActionGroupDemo extends SwarmImpl {: ?1 n; R, N S
ScheduleImpl schedule;8 k( m& g# ?9 Y/ J# [2 F
ActionGroupImpl actionGroup;
7 w% v0 [0 S" |( g; x ListImpl list;( I- I: u5 Z4 A: J
char Id = 'a';
% k* D* W9 \, J% J, b) `+ H
/ O- F0 A" s1 e6 H1 E% p b9 k! | ActionGroupDemo(Zone aZone) {
* y! J8 C, s3 O E. G Z4 r2 r super(aZone);& M d9 K! R- k" ?: D F
list = new ListImpl(aZone);$ ~- n" b% {8 J1 m4 F+ K1 c
swarmSetp();
) m# p) E+ U; S9 U actionGroup = new ActionGroupImpl(aZone);7 v$ h9 [. N" U( W
schedule = new ScheduleImpl(aZone);( V7 Y. |% @+ E' W. L
try {, T/ t9 V5 m% [3 f7 k$ q; `
Selector agentSel = new Selector(Agent.class, "agentStep", false);
& B3 B, D( U' L) R& H9 W. X Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 y6 o+ M0 m% s5 p$ w
# }* u2 I9 B d7 Y! }* a actionGroup.createActionForEach$message(list, agentSel);
9 h! `2 y8 r9 M j3 p( ]$ j) g actionGroup.createActionTo$message(this, swarmSel);
9 \8 J6 W4 g7 _( Q- m0 \* U4 \7 J schedule.at$createAction(0, actionGroup);6 }- j! b# i; J0 P7 e0 L& E3 W
schedule.at$createAction(1, actionGroup);. n& U6 K( F8 P
schedule.at$createAction(2, actionGroup);' y4 {" m4 g7 |2 C% O9 C
7 s) W- A$ K9 I' Z# q0 S. [ } catch (Exception e) {2 i( k; G" y; u- g
e.printStackTrace(System.err);+ s6 }$ ]- E. `; c$ D
//System.out.println(e);
* Y5 T7 N" Q* B( h. ~# a System.exit(1);; W. E \* ?$ B- g9 Y# T
}; D. |! n+ }. f1 [; |; o" e
2 {' z* i/ o3 S6 A% x
$ ] J6 c9 p8 \7 { }
" \# ^4 n* g2 Y, q7 P1 j8 C- t5 S2 b' O2 t# }" G, @3 `
private void swarmSetp() {/ ~+ J5 Y7 @ Y7 {# P8 \9 O" K
list.addLast(new Agent(Id));
8 }& m% q+ G$ f" F' p Id++;* e) Z- P/ g$ V$ ~% H& N+ t
}
. U! I/ e( J* W2 A1 U" L2 k- Y6 a7 V9 \7 l
public Activity activateIn(Swarm context) {) o1 S; i* x; g f
super.activateIn(context);
/ `# E8 r4 Q- a' A6 w2 n schedule.activateIn(this);, F7 D& z2 L% r9 Q1 P
return getActivity();! h7 d0 b, H1 h. C
}
( `( b$ x' ?: V8 S( Y# E% v
+ |/ H; e, z; J$ i" B public static void main(String[] args) {" d8 r) S! v2 _
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 f3 v& \6 v% O; t' g8 R3 i
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 ?9 |9 e: N$ T- [+ a/ O
swarms.buildObjects();
' v! o7 R* C& Q$ ~% z% v swarms.buildActions();
6 X& y6 b. a/ v6 {$ r3 g- p swarms.activateIn(null).run();3 X4 v7 Q! [) [5 ?; O& {5 W
}
4 V1 `) t9 T7 _5 \: V: o: A
2 J2 j5 j: `" r9 B} |
|