|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # o. K4 ]/ X' ^4 q
) I- {% g! ^ A$ e/ m" N本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! ?3 n% R6 I0 V5 x7 P) Z- ^2 Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 X5 P: b! p- x$ t! s
swarm.SignatureNotFoundException
4 @$ \" b- ]5 H0 z6 Q at swarm.Selector.<init>(Selector.java:76)- P. I. L1 D/ C8 `0 b
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( n. K# t7 N' \6 Z$ X
at ActionGroupDemo.main(ActionGroupDemo.java:67)
, b0 j+ w) }( D$ Z. p/ T
! v7 q1 D ?- `9 V1 i: a0 V! _& Z i
import swarm.objectbase.SwarmImpl;4 m( m7 u6 |0 } e0 o2 N
import swarm.objectbase.Swarm;; D0 T0 e7 j+ ?2 d q$ w' n( U' [1 L
import swarm.activity.ScheduleImpl;
" _9 x4 v) P$ F- q$ z; l( Nimport swarm.activity.Activity;8 N# _' \$ g0 [7 Z
import swarm.activity.ActionGroupImpl;! U; U: K2 U: ^+ k4 D* U; l
import swarm.collections.ListImpl;+ e S& m) @% d0 j
import swarm.defobj.Zone; 6 }7 h. U: g3 S0 j4 V" l& L
import swarm.Globals;
+ v3 b4 l A1 |import swarm.Selector;
. ?8 C4 B$ D) `- [7 x5 I/ F* y1 `import swarm.activity.ActionGroup;
* z8 Q- }4 _7 I }class Agent {
! I% N. } W) f7 c& ? char id;
2 u( e/ j7 o9 r" B* [2 d- K6 n) ^2 n" L& N+ p0 d* Q
Agent(char id) {
& n1 ]: q" C* A5 O( s3 N# j# S this.id = id;
: ?) E( f5 e9 o9 { }
% }' [8 n# R( R+ d5 n+ U" W9 _# ] d+ s# a1 {, j {4 |* T
public void agentStep() {
- e, f4 u8 n# V! ~. P3 Z# ~ System.out.println(id + ":" + Globals.env.getCurrentTime());, n3 B* F! P9 ] _
}
, Q" Y! l" B* l" _8 M, O+ q; C}1 T/ p/ m/ `3 e) x6 I
! g) I9 L, J, ^! l# Y( `public class ActionGroupDemo extends SwarmImpl {
- y% V/ L, u G8 F3 l ScheduleImpl schedule;# Q. J: s4 V' }9 v
ActionGroupImpl actionGroup;
9 Q# b9 X" |6 m [5 L' g ListImpl list;
" D% v7 S2 @. c7 Q) a char Id = 'a';/ d4 [5 c! s L# L/ {
+ u8 b5 ` T2 Q a6 r2 ?; V
ActionGroupDemo(Zone aZone) {1 v/ O6 m; e! w' i9 k
super(aZone);0 S; {7 B) N. {0 L( o+ e9 k
list = new ListImpl(aZone);
4 t/ J/ S4 M" G: ?8 p7 ?$ d swarmSetp();' h. W+ } M& I# J( C+ a
actionGroup = new ActionGroupImpl(aZone);1 y* Y: B' B. p" |& h, ?
schedule = new ScheduleImpl(aZone); K5 N' L3 |6 H3 Q' C* ?
try {
$ w2 O/ o3 d, q Selector agentSel = new Selector(Agent.class, "agentStep", false);$ k5 r8 d# W$ Y& S
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 X3 y3 r, [3 v& v' w+ K* E( k 5 d4 U+ w$ K0 T/ r* m' W! A
actionGroup.createActionForEach$message(list, agentSel);: H- `" L% @$ I9 M# M
actionGroup.createActionTo$message(this, swarmSel);4 e$ r8 O& |2 Y3 |
schedule.at$createAction(0, actionGroup);
; R% |7 r" k9 D; J9 t$ A schedule.at$createAction(1, actionGroup);1 s4 i8 r, U9 w- o9 C
schedule.at$createAction(2, actionGroup);5 d7 ~: n7 @7 X% g, L$ A
( W6 g; q! p5 f* L7 U Q/ F% U } catch (Exception e) {
8 P3 k2 B- Q6 ]6 e0 A6 V/ j e.printStackTrace(System.err);
+ f- v" g& M7 r' k" V //System.out.println(e);3 w6 z! o; b# K1 \+ \ G% Z
System.exit(1);4 W: v+ A5 a0 N3 b8 {
} ?0 v3 [4 u0 n/ J/ _9 r* U% {
9 }: b. a0 U5 g+ S, C' T' b' |8 W
0 V# k( g O8 r) [+ }/ b6 |# ]/ E }; a" Y L; K, P7 K' j
- w# U7 R4 e4 S private void swarmSetp() {: Y2 |) z8 o9 v0 C6 Y
list.addLast(new Agent(Id));& P6 e: b8 @, s7 x
Id++;
/ x* |- E8 W. \/ H6 v, | }, R& {, U1 H# f+ e9 `$ T8 Z6 L
+ C% `$ H% I0 ` public Activity activateIn(Swarm context) {
0 Z u7 D0 T C2 @# z% A7 V# ?' b super.activateIn(context);
# u/ m8 @, g% E8 |( O6 d schedule.activateIn(this);
* B7 g; H) z! Z, T( e' U# _ return getActivity();% A. m' d+ R- [" Y! b# n1 M
}; `5 A) I$ R# w: I1 K
9 B% Q! k5 U% k2 e
public static void main(String[] args) {
3 t9 n6 m! B1 _% }7 x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 R$ k/ V5 N; b o' c/ g) @ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' c3 W5 M/ J7 M! W swarms.buildObjects();
# h1 Z1 h1 d8 W swarms.buildActions();
% k3 z3 `* E8 v swarms.activateIn(null).run();
, P+ ?) \- W! k* A/ Y }
2 J- [; C! n: S9 z# V3 g( B: W" l4 g0 |; p5 c* b+ a9 {& n+ |
} |
|