|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # ^ ?" b. O8 L: u! z
& C) ]8 z) s1 P0 x% t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
V, j3 {3 K6 a' d! G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 I; G3 Q( \1 f
swarm.SignatureNotFoundException4 n: N4 c3 r6 C( I/ f
at swarm.Selector.<init>(Selector.java:76)9 H2 g& \% j9 D* Z3 ^! l: ^# W1 D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 {$ a, i9 z6 A at ActionGroupDemo.main(ActionGroupDemo.java:67). {6 l) Y$ ]& D0 z. x2 k
$ h x) X D4 H3 r( |1 k
/ L) G& i3 \# m# Dimport swarm.objectbase.SwarmImpl;+ D5 D0 [! A4 [$ b4 T
import swarm.objectbase.Swarm;
( v: {5 y% z& g0 c- |6 k3 q5 jimport swarm.activity.ScheduleImpl; g' q( U( l y. d3 ], q
import swarm.activity.Activity;( D4 F B' p5 d
import swarm.activity.ActionGroupImpl;
( h! ]& I" N, j l& `import swarm.collections.ListImpl;
0 D" M+ U9 u+ E$ nimport swarm.defobj.Zone; / t/ D- S3 [: t0 u9 |# G
import swarm.Globals;+ m. H9 l f) h* t6 r" M4 |
import swarm.Selector;) m& I% K$ x2 v% V; |! y, A1 _
import swarm.activity.ActionGroup;
1 O. y+ d/ W5 bclass Agent {# p o# n U- l: u; p: U6 l ^% v
char id;! |. r1 P+ l/ q7 O* K: @ Y
. X+ N; S8 ?( ]# W Agent(char id) {4 J* i4 m+ d3 L5 x8 I. i6 c" M% P9 I6 A0 X8 @
this.id = id;
5 {1 V' W$ m3 @2 L$ C7 s4 I }
% X4 I Y0 h1 f9 U' c- U2 L3 V3 d+ n6 l% f7 S: @- h) @" P
public void agentStep() {
% O1 V& _! J2 { System.out.println(id + ":" + Globals.env.getCurrentTime());9 {$ W4 J/ Z, m; z9 y/ k
}% D& _$ U$ p% g: w
}
: Q- {& m# r2 f8 D5 N5 H
) [, p& I; A7 J% k/ [6 O! d9 upublic class ActionGroupDemo extends SwarmImpl {4 z* o/ w+ y# D. r: M% f% W' r* F
ScheduleImpl schedule;6 z0 W, v% f. a( [ G5 ]2 }& Y
ActionGroupImpl actionGroup;9 t. L" W8 ]: Q- H. J; N1 |2 G
ListImpl list;
6 z0 b6 R$ _" M! j t char Id = 'a';) Y4 u$ S& Q- v5 B8 R% z
& O; }( i; L" q, M ActionGroupDemo(Zone aZone) {
% @6 z a3 y2 p- J super(aZone);
9 i- q S8 I$ I5 H/ `0 }9 z list = new ListImpl(aZone);
/ S: f! s' j1 Z- [. N6 V swarmSetp();
3 E9 [' z* x7 j+ T* e actionGroup = new ActionGroupImpl(aZone);
( g( w) M& y/ r: _, Y schedule = new ScheduleImpl(aZone);
5 o7 m9 u$ l7 j: v$ o# Y5 N try {
# c( c* Z& R; Y: P3 }) d. P Selector agentSel = new Selector(Agent.class, "agentStep", false);
( ?( |7 R& ?- T' O+ x' q" x* { Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 W/ K1 A- S0 F& ~/ p" U$ M
$ d2 A3 _0 U7 _
actionGroup.createActionForEach$message(list, agentSel);
" r: D1 F5 ^) e# Y: H, S4 [# U actionGroup.createActionTo$message(this, swarmSel);
$ c$ G% t2 ]+ b schedule.at$createAction(0, actionGroup);
* c0 V& a2 R, M" H) O schedule.at$createAction(1, actionGroup);
& L, h. ~ b8 f/ x2 M/ v8 Z2 ~% L+ X* A0 t schedule.at$createAction(2, actionGroup);
W% @4 A' P& z4 S5 Y* s& g h6 J0 v# | w- m
} catch (Exception e) {4 r2 E5 A2 Y+ E/ K
e.printStackTrace(System.err);
$ M0 r+ w2 r; u3 ?+ t5 Y //System.out.println(e);8 B1 P, X" E- B6 H2 c0 E8 ]
System.exit(1);
6 u7 Y; F1 R' T& M }
" q! F% L& K4 ?' `$ M _) g3 P& K5 W: v3 N+ y
+ l% J% C# ^! \! L, o, K }3 ?# p6 c7 [) ?" C Z0 ]! R
$ A* A# u7 k) c' ]) p, J: d. v private void swarmSetp() {
. N% {, |! m, Q! l, s0 H3 ~0 D4 V list.addLast(new Agent(Id));
+ X, o$ X9 G& Z/ g2 F+ E Id++;7 Z0 K3 v5 g& U% H/ ~+ q" R+ p. r
} S) P" l9 t+ [' I
9 s, Z' \& @1 L public Activity activateIn(Swarm context) {( x4 K( C1 C' p
super.activateIn(context);
) x- |# v) g: f, J4 n9 h: m; ~( ^5 P schedule.activateIn(this);- b* ], s) @. A8 p8 ^) A
return getActivity();
" H; b- i+ O; R$ M5 g0 @& j- S }
/ R! w: k& t! a. Y5 Z+ G
# O/ k7 K# h5 } public static void main(String[] args) {6 c9 t/ S* F4 Q* ]$ A+ n, P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 T+ c8 b. Z9 q, o( E0 q, K. D _ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ x x7 d7 w( B, ?$ I
swarms.buildObjects();; ~+ ], }: K7 O* r
swarms.buildActions();* f9 l z- R; B$ K; k
swarms.activateIn(null).run();
/ c- q2 a! k7 S7 T% c2 \ }6 f+ h# Y; V2 z9 P$ M8 K1 X
' C# A2 x7 e! a. A W} |
|