|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& g3 ]+ u, d$ e3 n" @! I
) F# T- O4 }8 m, _3 u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 J9 d4 Q% O6 X# Z$ G( _5 V6 z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, g- Q$ Z; @3 _! |% \; [, e2 B+ Gswarm.SignatureNotFoundException. r% I% n' m p1 K! l+ o- D: t
at swarm.Selector.<init>(Selector.java:76)3 j1 \0 R d- ~, F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 a7 k6 _2 g# E& P% D
at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 C( H7 Y1 D- P; S/ F
. y2 A+ M; R$ U0 u7 I( n9 W% O. \8 J8 A, J8 ^
import swarm.objectbase.SwarmImpl;/ m* L" `7 m+ Z) S4 _& M1 D
import swarm.objectbase.Swarm;9 w8 ? D& s9 m# C* y e
import swarm.activity.ScheduleImpl;
2 t' b9 u( N4 x0 ?import swarm.activity.Activity;. A8 P9 Y% j4 |6 `% k. W, D* h
import swarm.activity.ActionGroupImpl;3 M0 t$ Y" h* f, t1 y
import swarm.collections.ListImpl;: O( c9 W, p7 x) a1 ?
import swarm.defobj.Zone;
( G* ^) @" N; _8 F, p* zimport swarm.Globals;3 b1 I: z$ G4 z+ L
import swarm.Selector;' k3 G. [8 K1 R/ `
import swarm.activity.ActionGroup;
% i9 O" ^. o' L4 D5 Hclass Agent {# z: ]) |* ^4 A5 u' }
char id;6 W+ }4 P4 ]& B0 y1 [
1 N1 L7 O& W( m4 q3 O/ ^* c; w Agent(char id) {' @" t# e% W( I2 j/ h" `& z/ [6 p
this.id = id;( z+ q2 r) s! d4 H% U4 W
}6 P9 @& t8 X+ g: E `
: Q0 B# L4 i, P% d: e public void agentStep() {* h, ~6 Z- f: k$ F' a
System.out.println(id + ":" + Globals.env.getCurrentTime());; q m2 P Y6 ?0 m
}
3 f" s- {1 F. j) T}2 x$ ?8 Q, O- f+ S- Y; T; J5 {/ [. H. f
6 w ] ]3 X) I8 ypublic class ActionGroupDemo extends SwarmImpl {
3 ~" f7 T5 \* Z1 `* z% p& Q ScheduleImpl schedule;% Z8 O3 y( R4 J( L" ]
ActionGroupImpl actionGroup;
& X, X' q' [2 j% e* h$ a: s' b ListImpl list;6 N. v2 c& i. R5 R
char Id = 'a';# H' C0 T+ U0 N& l: [. y
7 p; W' f9 p8 u4 a" m% Q ActionGroupDemo(Zone aZone) {6 S: e( i# r. P* u+ O
super(aZone);. a( y& U0 w( X D4 w2 p
list = new ListImpl(aZone);9 u8 E9 F5 T% S3 F' _
swarmSetp();. N s& U! i" R, x
actionGroup = new ActionGroupImpl(aZone);1 Q& R9 y0 K1 x$ i7 |3 e
schedule = new ScheduleImpl(aZone);" e5 s" n' x0 j9 g: n; g/ V
try {
+ l$ C# a9 O! d9 c) C. {+ a' O Selector agentSel = new Selector(Agent.class, "agentStep", false);) w9 P6 V$ u% |" ~4 N! ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- S* B& w, B- q+ ]' ?+ I
* G5 \: y8 M' }: s' `5 x7 S6 m actionGroup.createActionForEach$message(list, agentSel);* ?+ i& z' }& Y0 M
actionGroup.createActionTo$message(this, swarmSel);, d% g3 z1 U; z. Y( b6 }
schedule.at$createAction(0, actionGroup);- V& E" Y7 `3 V2 R+ D
schedule.at$createAction(1, actionGroup);
* P A& w+ x! j. O! E. ?$ T schedule.at$createAction(2, actionGroup);7 f* P* R! Z$ [2 p7 _
/ S8 Z4 h! d$ p } catch (Exception e) {
' u. Y1 q0 a, }' `, u e.printStackTrace(System.err);8 e; V {, O. h
//System.out.println(e);; V U% `4 I' y" v
System.exit(1);$ I' }; H0 _3 z, d& w; `
}7 ^1 R# m$ Y; i3 c0 Z) D% a
, P- S& u( L0 u7 e/ J
3 c: \" H% |/ X, \- Y: g
}* g; e2 f- X \6 p: G- C- c3 `
4 i/ q+ q1 d" M5 @
private void swarmSetp() {
/ i( y' z* X4 c$ e; { list.addLast(new Agent(Id));1 W+ u4 u$ j( g& f" A
Id++;: @* y6 U0 O" K
}) m% _8 ?& y. |; p, [
" c- r0 t9 a. H3 @
public Activity activateIn(Swarm context) {
* q( h/ z9 ^3 K. a* v4 t' \9 u super.activateIn(context);
c9 t/ b- A& J0 H+ O9 J3 S1 q schedule.activateIn(this);
! e2 j: T9 {. B5 _ return getActivity();
5 m2 }; x q+ G6 U }5 F& i/ p, i6 j/ q8 e) e
5 ]: \' p4 I' g- R3 I+ D; Y B
public static void main(String[] args) {/ x% [! v; r$ B f* r
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( p- ~5 L! O8 e- h" A1 k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 W7 ^5 D1 {( P8 `" ^1 [
swarms.buildObjects();
m/ N8 T2 w3 a c6 x: s swarms.buildActions();
2 s. b( [: ]4 M0 \3 o. A swarms.activateIn(null).run();5 f/ g1 F. b# P+ g% M t
}
) `! t/ P" F: r3 J! [3 M% x. K/ Y5 Y' E) `! S; l# s" C- O" E. o( y
} |
|