|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 W* r0 Y: r L. s$ V- g& G5 |! j; E1 W! U1 Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; C1 z& `' s+ ?+ z6 B8 n* ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ A- T) a% H6 D0 n
swarm.SignatureNotFoundException
8 _4 \7 r# x o# ~5 Z7 B at swarm.Selector.<init>(Selector.java:76)
# m2 ]7 v% }' F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- u1 f% `* E3 f- g. _4 L at ActionGroupDemo.main(ActionGroupDemo.java:67)
. A; H" d* Y7 u+ [( O
5 e- x8 b' d* F& A* Q' O0 }0 h- S( ]
7 O$ N% `( b; Z5 fimport swarm.objectbase.SwarmImpl;
' q l+ P1 R5 l7 p1 v' uimport swarm.objectbase.Swarm;
$ V: V: K, z5 F( w) h$ }2 \import swarm.activity.ScheduleImpl;% z, K5 g3 b) }# R5 {5 A) y/ y
import swarm.activity.Activity;6 ^4 N5 Q8 M2 o. ?7 W
import swarm.activity.ActionGroupImpl;6 ~: A6 y" x* h. A: @* t
import swarm.collections.ListImpl;) h- K) H6 [- ^ t" n
import swarm.defobj.Zone;
: ~/ V5 ?2 b2 \: v- d# H$ y* yimport swarm.Globals;1 o* W9 E) t# y# O. }8 q
import swarm.Selector;
) f1 c: P; p+ w. n6 ^4 Zimport swarm.activity.ActionGroup;
! e" ?# E. Z% Q" Y5 {5 m! b! Fclass Agent {& S! E8 w B1 h) l" k, I' x
char id;! A; N3 ^9 V1 Y |; B' h
! z4 B2 ~; H" u0 ]9 Q
Agent(char id) {& Y. \6 O/ _# p2 b/ A
this.id = id;# |/ i- F3 |4 y* r* A4 Q1 n' P
} u1 N7 l' I9 y8 ?
# D, d2 b% v( Q public void agentStep() {; f% k2 E; Q A
System.out.println(id + ":" + Globals.env.getCurrentTime());
; M& J( i4 \( i6 ]1 b& F }
5 C; V+ ~ s' |1 D6 r3 X5 r}+ z$ P$ Q3 d5 V5 b& @4 z2 \8 N
. S) b5 l( f8 M
public class ActionGroupDemo extends SwarmImpl {
' J, X7 }) Z0 N' \ ScheduleImpl schedule;
0 E Z" O6 J" M, V3 t3 H ActionGroupImpl actionGroup;* [0 o. _2 |( m. c( }9 M& V
ListImpl list;
# A- B- l% m& Q) R) O9 j# w char Id = 'a';3 | \# e" ~' h; l4 s; F8 x* }; q- s
+ G5 C/ S/ V( A4 I0 e. u6 S
ActionGroupDemo(Zone aZone) {; V: A7 Q5 a/ C+ W
super(aZone);: j: P. S) y. J( l- H0 Q
list = new ListImpl(aZone);) N1 I5 W8 @- t& U4 F8 m$ }( K
swarmSetp();
5 ?+ Y( V. c, n: Y0 C$ u! l actionGroup = new ActionGroupImpl(aZone);
8 g! ?- |' N5 K0 a) ]+ h: \ schedule = new ScheduleImpl(aZone);3 y2 W; i$ f2 Z" \
try {
( H) o8 \# `! L8 T% l/ `! D1 R Selector agentSel = new Selector(Agent.class, "agentStep", false);
' J- u- M+ d$ M/ o0 x1 a, N" o Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# ~, W+ s9 @8 }7 @. \! I
. L, S) c% a4 D& d( L. h
actionGroup.createActionForEach$message(list, agentSel);
U& p! f/ }; g4 a/ { actionGroup.createActionTo$message(this, swarmSel);% P3 W! A3 r5 P" z3 h/ E
schedule.at$createAction(0, actionGroup);1 j2 ^% M* s9 H7 q0 `- c1 x
schedule.at$createAction(1, actionGroup);- G: O4 t& z' Z: R' H3 R3 `
schedule.at$createAction(2, actionGroup);% y- V! h' D H1 ~! f& D: G
' e, ]" ^- ^ O" P) p+ F s
} catch (Exception e) {
# a+ ]& t. A$ {+ n, f e.printStackTrace(System.err);
. x1 t) R8 d- @4 E+ x0 t //System.out.println(e);% Y8 O5 I q6 m" Y4 t; g
System.exit(1); U2 i9 l, n" \& }. u
}
; k8 }9 h; y! R2 O* m/ R) Y1 g! H: u9 M) o, z1 D# ]9 S( I
- O C1 r9 h7 f: z2 p
}3 Q( ~+ Y- K& C( a, M# C3 y6 Q
; d: @2 ?- P' G, n6 H& N; B. k7 _ private void swarmSetp() {4 o5 G$ c3 z. _4 U/ J
list.addLast(new Agent(Id));% Y; k m# }3 G2 _5 q7 p0 S
Id++;
5 r# O' }/ l" O }
1 G' R$ z, r1 e, g b7 V! J2 p% R3 G5 O' S
public Activity activateIn(Swarm context) {: D8 t1 E/ Z% k- n5 v! G6 ~
super.activateIn(context);
3 U/ D4 q" f' s0 q; q schedule.activateIn(this);1 S5 U O2 U- h( d2 @7 ?8 v' o2 F
return getActivity();
2 W/ W/ b. R9 ?; B: l/ H }
0 K% h( l( B9 f% s/ D7 @+ i, T" Q2 T+ \7 X6 G. d
public static void main(String[] args) {
3 A0 A Z1 T3 Q5 Q5 {, | Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 k q! ?7 x+ a! F' d- q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, ]2 i' t' O4 `, F. N
swarms.buildObjects();
3 ~: M& x# t% _: ^1 C$ D, m+ I3 t swarms.buildActions();
0 O- {$ U* j3 R6 E* n swarms.activateIn(null).run(); g6 G" a5 C- }! ]4 f0 U
}
3 S" V p& Q9 w$ Z: [: J$ a; F6 {+ s. B& h: h
} |
|