|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 p% Q" f' m" a% a; p
" n7 A- L; ~+ Q- s8 P P, p) a8 f9 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- M2 ]) o, N* n( @& D0 l! C以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. F$ _! q! q* H3 k" s5 S
swarm.SignatureNotFoundException6 N# s/ M1 N8 T# z; H& U
at swarm.Selector.<init>(Selector.java:76)
' X) n4 E" l8 |. B at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ m5 e5 F1 ~. C$ v. v3 b5 ? at ActionGroupDemo.main(ActionGroupDemo.java:67)6 i' C& `+ f' A4 H; M
; f* B* y2 c8 J' I: q
/ k: c; z3 X d, ]2 fimport swarm.objectbase.SwarmImpl;
9 \; z3 ^3 A4 z) T# w2 A+ Ximport swarm.objectbase.Swarm;+ K8 [. g' ]) H: r
import swarm.activity.ScheduleImpl;
- @7 m |6 n9 m: a3 T$ `import swarm.activity.Activity;/ m9 A6 Q; T( ~- t
import swarm.activity.ActionGroupImpl;2 N9 w% A% C0 ^( Q$ K) Y
import swarm.collections.ListImpl;6 l8 N+ V* o4 B/ P
import swarm.defobj.Zone;
9 N1 w, y7 r' ~' I& o7 A0 c0 Yimport swarm.Globals;( t$ Q- Z: S7 Y0 R! P
import swarm.Selector;
8 F) m, t$ W. Zimport swarm.activity.ActionGroup; 1 n) M- b# b6 |
class Agent {8 F* _1 m7 R3 a0 k; \% I
char id;5 n3 ^# c6 z0 R# h G8 ~
, G' P- s4 o1 }2 }" `; U" {8 t' j Agent(char id) {
+ E: L S" ?2 ]! A0 s2 f: e9 I; a this.id = id;+ Q% O9 f5 Z2 r1 D6 W0 {2 ^
}' j, P% b N' m7 l8 V5 P0 |
. E9 }" i a* f% H
public void agentStep() {
+ u& D( z8 U9 w; }6 F V System.out.println(id + ":" + Globals.env.getCurrentTime());0 \: J% N6 l8 T; S$ z
}
: _8 m; z) s: P" Y( F5 X3 }) g! v* a}8 P( K8 m9 {' z2 U
9 g7 E+ f9 h- m0 } S& cpublic class ActionGroupDemo extends SwarmImpl {8 ]2 h4 i( ^0 y& g) d) H
ScheduleImpl schedule;) f0 E) b7 C$ G2 d7 F
ActionGroupImpl actionGroup;7 l. Z N+ F: E
ListImpl list;3 ?4 K* y/ P) F& {7 h4 [+ @
char Id = 'a';
, o7 X5 k9 Q6 V0 E0 M { W& y2 P, _' I; k! v' W, r& n4 _
ActionGroupDemo(Zone aZone) {
: A I ]! f3 _' a: i- R/ @2 s3 D% a super(aZone);' ^/ n: X* V% l1 E) Y# U8 q
list = new ListImpl(aZone);
1 ?; s8 w/ I a) H5 L swarmSetp();
4 c8 H% q$ R$ Q) {/ ^) }6 f; T actionGroup = new ActionGroupImpl(aZone);
, b) u; @+ U* _, D( L schedule = new ScheduleImpl(aZone);( H; D" {5 u& j W; ~9 n
try {) v f6 v4 ~/ l l
Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ ?% Z9 X: |; \4 H Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; f: X. e0 K6 t7 p- T
1 l9 R0 m1 e% P9 P; p actionGroup.createActionForEach$message(list, agentSel);
% a9 r: W5 D5 A9 E( i1 x7 c/ G actionGroup.createActionTo$message(this, swarmSel);
; y% N: d/ P* O3 Q schedule.at$createAction(0, actionGroup);1 S0 W* a; M' G1 b
schedule.at$createAction(1, actionGroup);: q$ q8 \2 ]' p
schedule.at$createAction(2, actionGroup);
/ v: c+ R* P; b1 m+ w+ h+ Z6 @& z0 g# W% a* A- P& _/ k- m& A
} catch (Exception e) {
* R9 J7 Q. l6 S6 h8 V6 B" ] e.printStackTrace(System.err);
& T0 \- F6 g. R+ f" b6 C$ y //System.out.println(e);
; d4 P, j* w; c$ c* v, x7 w System.exit(1);
0 ?" R# e+ d: m3 j& P% _( |- ]" t }6 Z4 c) Z, \3 n+ M; w$ g' f! Z
0 e* |9 s, o2 ? W' t- I
0 h7 ^" d* i2 W Q" u" L }3 r. l( F& F5 F! \2 c4 Y( n- b
" H2 j8 I3 o4 c6 m3 Y2 y! ^2 @/ k private void swarmSetp() {. T8 I- i$ K1 A* ^/ o
list.addLast(new Agent(Id));
' Y! T: v3 I3 k6 v" n3 {& q Id++;
+ H- @& A$ W0 Y9 `5 C }. }9 r9 b2 V0 S8 X( t
8 M5 r# i3 M' M5 u# E+ p" E public Activity activateIn(Swarm context) {7 k# W, o, e! P2 y1 @( }4 j
super.activateIn(context);2 T" c5 l& i! m) K) i: o; T. \
schedule.activateIn(this);
& p! D0 O) C2 \3 i1 V* L- B1 X return getActivity(); O) @8 N. Z2 y7 Z1 H0 R$ q7 W
}# x3 K. V# f3 U5 Q
( w( C# s5 f4 j( S n
public static void main(String[] args) {
& F- L8 W9 q! z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ @" F6 A4 [. R- K- D
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 E$ I, t# t2 C8 X swarms.buildObjects();
$ m! l# b7 W( c5 }0 q7 F7 N swarms.buildActions();$ ^3 x K9 n8 ?/ m& W
swarms.activateIn(null).run();6 g5 M' V) M2 K$ S( o0 J
}. v; x1 h3 v3 ~' w/ M4 ?
1 [# A L+ W4 b5 Q: m' E7 s2 ]$ X} |
|