|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& |0 p0 J( ?4 c. }2 w7 @: l+ n* Z+ q0 c* s4 B! M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& K: g6 J$ G! t% Z" i4 ]以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& p! u" N$ h) N1 H7 Z* Gswarm.SignatureNotFoundException. x3 U9 p2 l# a9 \6 q6 ^! {4 n
at swarm.Selector.<init>(Selector.java:76)9 N5 [7 V6 u* g. v* R/ o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% V6 n) v/ S1 l' j5 J/ U7 e2 h5 Q
at ActionGroupDemo.main(ActionGroupDemo.java:67)
% s, p. E! t7 D& b1 x( S$ n' L& y; i6 H& v3 f
3 k5 e) l$ o6 V% ^7 p( t
import swarm.objectbase.SwarmImpl;8 Y3 E8 F" g' }- P
import swarm.objectbase.Swarm; E- U7 V, \4 d+ d- L# | T. R0 G- W
import swarm.activity.ScheduleImpl;& \) p6 Y' K; y# i
import swarm.activity.Activity;
5 l. U: Q. d: W2 K! pimport swarm.activity.ActionGroupImpl;9 S) }. o+ R. @0 u; S- r. N$ ]
import swarm.collections.ListImpl;
5 J9 \& \4 q( w" l; n8 @import swarm.defobj.Zone; ) C, o. T. I/ h x7 {( A
import swarm.Globals;/ w% Y- D* L) y# a0 s
import swarm.Selector;4 r; j' D& n/ M; b: [" J. V
import swarm.activity.ActionGroup; . m0 h' C1 |$ D! V
class Agent {
' Z* w L- C2 b9 @, W, o' I char id;! a* I2 \$ F" n+ ~6 c1 n) c
1 t# U, o0 B$ i9 h* P2 L
Agent(char id) {! Q( [* r+ t5 Q, @4 B
this.id = id;
G1 Y9 _6 o, G( H }& N) G% N6 B. t& y( N
8 B4 T2 F. H9 E
public void agentStep() {1 c! g- @' E' b8 I- X2 J! e7 q
System.out.println(id + ":" + Globals.env.getCurrentTime());
# I8 R+ T3 h& R; G& {$ H1 | }
0 v1 Z5 ]' @7 n}+ f4 a9 ~* B4 v. E" v
! C7 k1 i% d B1 Z% i( g8 Q
public class ActionGroupDemo extends SwarmImpl {/ C2 C! {2 w# L: t" D8 f9 b
ScheduleImpl schedule;3 F- _ O T5 |: R
ActionGroupImpl actionGroup;
5 h$ X- d! D, D; |0 v' S. K ListImpl list;2 z, l6 i% e. O* @7 k6 ^ N, f1 c
char Id = 'a';7 u# t5 U1 l! O1 {
* B( Z p3 ]6 U S8 n, x+ H
ActionGroupDemo(Zone aZone) {$ B# i6 a" U g6 ~. {% Z0 ~2 d- T
super(aZone);$ X) d/ F. k+ L: i; A* Q
list = new ListImpl(aZone);
* {+ E, {$ d$ @: c8 ^ swarmSetp();
2 [& ?6 z- s( ]9 W8 N9 I) C7 ^" j actionGroup = new ActionGroupImpl(aZone); `' e7 q6 z1 |* V$ `" b
schedule = new ScheduleImpl(aZone);" U# {! {) u. [) Z% C T: [
try {( m% s* o4 D& d; L5 X# \
Selector agentSel = new Selector(Agent.class, "agentStep", false);; @ h- E& H1 G% F9 s1 s. ^
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 ~* X' v& X/ N: k6 R F% v' K 0 g0 T7 p4 ~+ t( W' X6 |0 J: d
actionGroup.createActionForEach$message(list, agentSel);
?# ^1 c* u6 h/ L- l: v actionGroup.createActionTo$message(this, swarmSel);
6 w ^1 |* r) g; z' T0 F1 ` schedule.at$createAction(0, actionGroup);
2 }8 q$ h+ e: Z3 ^3 O schedule.at$createAction(1, actionGroup);9 Z# }8 o' I* ~, k( t
schedule.at$createAction(2, actionGroup);
* J! F S( u% B& U) f+ H9 @" G% I6 Z& H
} catch (Exception e) {
* F2 [# ? Y3 Y0 y) u e.printStackTrace(System.err);
2 R& N& E1 g7 O0 n6 j //System.out.println(e);7 F% q& h) r3 x. c
System.exit(1);5 P% B) V% h8 Q7 `
}
3 o# q8 x# }( p$ |3 S& B
8 R# p3 Z$ e) w3 {" H+ E+ h) z; K4 P, _) m6 F4 F, ~# Q
}' a1 M4 E! ~ F F: p! I) s
+ o; j& u+ N9 i& m
private void swarmSetp() {
/ }$ E' {4 j# K6 K list.addLast(new Agent(Id));
. Q" f% [, M* |. X) ^- | Id++;
6 U: I' R5 j5 w9 m C% L' [ }
' }% k1 l: V& T* \$ S* e+ J* X1 t9 V. T; B. O6 H- J
public Activity activateIn(Swarm context) {
' F0 a1 N" ?8 a+ Z* i7 E9 P/ s/ G; _ super.activateIn(context);
) f; _1 v' t4 b' d# |2 b schedule.activateIn(this);5 U7 q7 i2 `. v3 ^
return getActivity();" T) f( f) A* M
}
1 m/ i& k' M1 U+ B# F# u! w0 H# U6 W1 v$ ?. c, K2 ~! w6 M+ H! i3 m
public static void main(String[] args) {, K& ]5 x' I$ W( H
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# l' C, i! V0 j- a9 g+ l- o( h1 c- [0 ]
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- C& [4 z$ K- a( }, u# Y9 ]4 }
swarms.buildObjects();6 i7 e5 F& i6 l7 C n. X0 {& y( V
swarms.buildActions();
2 y3 w5 N; Q4 u* z6 Z; ] swarms.activateIn(null).run();
, ^! M; m; }5 G. R) O6 x }7 K& m1 D$ S3 k* l! Q. V
7 c5 W2 q! C4 v' i: d$ u9 ?& L
} |
|