|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# z2 X" s8 {' S5 s: [& z
8 f8 }9 U0 i8 A% _+ t本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ S- i: ], y9 w7 x$ l' {; Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 C- ]( D: M0 p0 G
swarm.SignatureNotFoundException
0 G. ]2 i3 n% x9 c/ e7 y- \$ j at swarm.Selector.<init>(Selector.java:76)$ a! c0 d4 k. V+ U3 k6 E; h
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- o$ ~" w. `$ U( K2 c1 n* H# I
at ActionGroupDemo.main(ActionGroupDemo.java:67)# H) P& {2 g* m7 l
# g' u& k7 V6 C
# b0 E: m9 `, t# r# s4 O6 ]import swarm.objectbase.SwarmImpl;
: s: [4 z P1 u4 O4 K3 ?import swarm.objectbase.Swarm;
( [7 c+ L, T0 P% {0 F. Vimport swarm.activity.ScheduleImpl;
" L, |5 r# ~. |" gimport swarm.activity.Activity;7 a0 @: J/ C2 R8 y
import swarm.activity.ActionGroupImpl;
$ F8 R/ w3 |1 E9 |import swarm.collections.ListImpl;0 }1 y" V6 }" a
import swarm.defobj.Zone;
& c2 _) @, A3 u K3 |5 fimport swarm.Globals;$ c9 e' a$ N; X% O' n
import swarm.Selector;
: F {( N, w& C. @- C0 l: ^+ Kimport swarm.activity.ActionGroup;
, p! B. @7 j8 S1 e0 @- ^2 ?class Agent {2 {1 Z" o/ R% F6 v R Y
char id;
, m, x8 e. s) Z4 u2 l
" I2 U1 F5 M. v i* G5 C8 m Agent(char id) {
X/ I/ Q6 [0 f. L this.id = id;! m: G! K9 G0 K0 h
}3 K q3 A( E) s/ S, J, I! Q: \
/ C. w! v8 X, r
public void agentStep() {9 K8 f4 R$ {* S$ b6 n1 B
System.out.println(id + ":" + Globals.env.getCurrentTime());) |' B' a. L; i( ~, c
}
! o) }% r0 B, V2 V}% w4 I# s( Y% T4 E; u/ H* ~
& z, v# I+ g; G) Apublic class ActionGroupDemo extends SwarmImpl {
8 E9 K6 X3 c' p5 |! B7 s ScheduleImpl schedule;
9 V: Q8 t9 A6 f! J3 @ ActionGroupImpl actionGroup;9 s7 N3 }8 y0 Y
ListImpl list;5 o {) h2 G( v* y
char Id = 'a';/ [. K V6 W6 S1 D3 Q8 ?! b) ^
. A7 ?. ]2 b" u/ ]
ActionGroupDemo(Zone aZone) {; b( k2 g5 u p# @1 \3 s* V0 `- H
super(aZone);6 x0 a% }& L* v+ T7 l, A3 \, ~
list = new ListImpl(aZone);9 g4 [0 `8 D% F! m3 j2 `
swarmSetp();
4 H" q% ~$ W) h3 S" ]% G: x; D+ y3 P actionGroup = new ActionGroupImpl(aZone);+ m) s; G- W" @* d2 [8 v. G
schedule = new ScheduleImpl(aZone);
9 T* k% C0 I$ O7 A4 a; q, @& E' n try {
7 }8 ~6 ]7 Z" J8 ]& E- _" m5 ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);- N. A; f2 Q' |4 W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 `8 L+ A# i. K
9 y2 b X! K+ y$ S
actionGroup.createActionForEach$message(list, agentSel);
$ n( ?& g( n5 c* B actionGroup.createActionTo$message(this, swarmSel);* c! g3 H. B$ X: m. J& n' w1 `' Y- n
schedule.at$createAction(0, actionGroup);
7 s5 g. ~3 @8 }3 W schedule.at$createAction(1, actionGroup);
$ k! |5 t5 f) a: {$ n, u9 R: ? schedule.at$createAction(2, actionGroup);+ O3 `& x2 R" `" o! I) g) X, e
1 m; Z3 \: G1 j5 d$ k$ b+ b5 X
} catch (Exception e) {+ S1 ^( x) `4 c$ P7 M" J1 S. ?
e.printStackTrace(System.err);
- ^4 G" e* X8 x5 I //System.out.println(e);$ q8 m5 s0 i# j; b P
System.exit(1);2 I+ S1 \' o. ~7 H% z( X3 b5 P% H
}
* S7 F- X3 x& X9 f& B* n% H
( s( d7 ~) T8 r6 A
3 `- Y, C+ G$ v }5 G5 S6 b [# j, {( ?* L3 M. w
9 g" p: C3 {4 K private void swarmSetp() {5 V8 w @) h1 e
list.addLast(new Agent(Id));
4 e0 _3 Z) q" X$ E$ j8 R) x* X# \ Id++;5 n% X& O6 \1 V
}* g! m5 T9 z7 T. s" y: B( \
9 H9 `1 k% r% }8 F5 v. ` public Activity activateIn(Swarm context) {
) C' P0 N3 N/ t* ~3 A" l( G8 r9 h super.activateIn(context);
! ?9 E2 T, [: s1 A4 p9 r+ O7 J schedule.activateIn(this);
9 M+ Y0 u3 V- T return getActivity();0 q; Q$ f- S" }/ q. @
}
/ J* @8 G. [) n) R" f
; S; a3 y8 r) A public static void main(String[] args) {
( o" D+ g$ x8 Q- ^ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 Z+ p9 w) v( Q8 h
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ g0 K) \& V1 k% D5 Z: Q0 q swarms.buildObjects();
5 c* J/ t& `, Q5 r swarms.buildActions();
5 T6 v/ m8 e: \9 F4 s: U swarms.activateIn(null).run();, |; v" Q: m: \4 j! @! g6 n& Q
}% w7 k- x& a) F' [- [* `+ X6 p2 w
( {+ M3 b9 u* q0 ~& s' i} |
|