|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 F& t. m( H% y! {! M6 @0 u
$ r5 C! a+ g' v: v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' }( T) G' O% f0 X0 y9 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) x; K% @$ H# G) |
swarm.SignatureNotFoundException
" J3 x: I U5 P$ N [ at swarm.Selector.<init>(Selector.java:76)
( K# N8 b; p' l& |4 d! b1 Y/ _ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 P2 g. V; ]8 G' c, ]( Z at ActionGroupDemo.main(ActionGroupDemo.java:67)$ g% I- I# W2 S
' }: a, [0 X* c9 P1 F2 u0 {+ Y: c) }- X* J
import swarm.objectbase.SwarmImpl;
* t9 N* J) D4 i. uimport swarm.objectbase.Swarm;
' f& k3 c+ ?/ P+ [0 I* K, J/ g3 aimport swarm.activity.ScheduleImpl;7 C. }9 f+ g: D7 u5 c
import swarm.activity.Activity;
5 A" G* W' s: [! r3 S4 w9 Mimport swarm.activity.ActionGroupImpl;
. [2 y# D9 T; Q" G, B$ w) [8 W7 a7 c5 \import swarm.collections.ListImpl;
8 x2 t, S# _& _8 ?' X+ Gimport swarm.defobj.Zone; , T: i$ f8 l- M+ l. I
import swarm.Globals;
9 U: D/ T" T# r+ k' `' w% ^9 Oimport swarm.Selector;* S$ y" V ~, H+ Q1 I& j' p
import swarm.activity.ActionGroup; & D; j+ P1 L1 s/ y8 c
class Agent {; V- U, L9 ]9 |! q0 X
char id;
+ r) K) `( n! H$ i' G; Q" X- W8 N
Agent(char id) {! Q; s6 i; J; E6 l6 ?
this.id = id;/ s) E" T3 `/ w2 \* j
}
, H7 j3 `" ?, I8 @$ F
" j t% B) G: N public void agentStep() {& h) c% K, }$ w3 @* f$ o0 l# H
System.out.println(id + ":" + Globals.env.getCurrentTime());
% O- i2 d. G9 m' B! R }/ ]; H3 l+ R, R& V* m
}5 }+ ] N. ^" R, |
/ y; S4 b6 R: v& Y" r% Kpublic class ActionGroupDemo extends SwarmImpl {
9 G7 C0 u' u8 V# D% _" X ScheduleImpl schedule;3 g2 }9 v9 l( d- ~. _
ActionGroupImpl actionGroup;
" X+ R3 J5 \3 N5 ? ~ ListImpl list;$ p) Q/ k2 l8 w1 Q! z; u3 [
char Id = 'a';
$ o. a8 ?6 o% m# {& W; C
! h; l8 f8 g# {* k' }' r/ X3 t ActionGroupDemo(Zone aZone) {
- Z' r0 o# I O$ h; |+ x8 r super(aZone);
0 L: f+ }- k2 c4 M9 V+ a" J list = new ListImpl(aZone);
' N# I/ Y; o) x$ E# Z; ` swarmSetp();
4 ~" z- B3 D4 [! S- I0 ^ actionGroup = new ActionGroupImpl(aZone);8 Y/ X3 H6 ]( O2 o- w s; p6 ]) M2 ?
schedule = new ScheduleImpl(aZone);0 s2 i* Q9 ]4 ^1 c k0 P# C q; c& Q
try {9 E. ]$ V! J& |% C
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 i7 p! a1 _9 `; l$ l" N! s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ s. n9 B' D, ^: S y. B `! N. h# e% q6 T3 E3 Y
actionGroup.createActionForEach$message(list, agentSel);
1 y/ [; W9 f2 m actionGroup.createActionTo$message(this, swarmSel);; U9 m8 A5 m0 a! |" L. V. ?# }
schedule.at$createAction(0, actionGroup);
1 P0 C' U$ E1 y# D schedule.at$createAction(1, actionGroup);, [+ f9 o' f& A" d; i! U
schedule.at$createAction(2, actionGroup);$ a+ T; _5 X6 N, Z1 U- C
7 ?7 r: e/ A3 ?6 l9 Y } catch (Exception e) {% t& T/ Q4 [$ g6 l, h! w) d
e.printStackTrace(System.err);
7 H% V0 B( w- T3 c/ x% c //System.out.println(e);4 |: S3 E2 n% D/ V* Q
System.exit(1);; t$ s7 y, o$ V
}
) e6 ^" h4 U1 u8 l" q2 I1 `) [& X- s; b( A$ O" P5 S, z6 F
: ~2 f6 {: I2 ?
}+ Q- @9 A( @0 Z+ y) J
4 r0 u# N1 I9 J private void swarmSetp() {
- w8 y2 f3 `. L6 B1 e: `6 m list.addLast(new Agent(Id));
! ?& h& \% l# ? Id++;9 B0 _6 N; z q
}+ l* O8 W$ q4 k0 l6 F0 f+ N
: k% J Y/ W" y: N, s) E; ]- t
public Activity activateIn(Swarm context) {
/ j$ e0 \3 E* v4 t super.activateIn(context);
/ C( B' Z7 o) i% H/ e# [% X. p schedule.activateIn(this);
2 \8 T/ Q. p! S0 C0 \. c return getActivity();2 b; c U7 S$ `1 x6 u
}
, j7 o" |) J. V/ O# F. N# x& ~, Z4 t- u$ Q0 H
public static void main(String[] args) {
; y, G4 K2 U7 b7 Y( R7 K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: U6 A/ V& F5 d& u
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& A6 U( q" P8 k m |: s7 d/ H
swarms.buildObjects();
0 r) k9 Z; t4 k swarms.buildActions();. C, v& f" r/ u! a. B0 l
swarms.activateIn(null).run(); h- @% {" e) i' `* K9 P T" n/ i
}' M$ M9 ^% N1 V0 w" m
9 X9 `/ R% a7 e1 o2 V% m8 e
} |
|