|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ I k( ]: r, r5 a
# V/ b2 ~. X% Q7 Q% _: x Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: M1 T" `! \5 T. P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' k/ P( i3 ~- u2 J) z" U: @/ Z
swarm.SignatureNotFoundException
5 u6 Y' v$ j5 M( N0 K; s( E' c' C at swarm.Selector.<init>(Selector.java:76)
0 S+ r2 v* N% h& b* `. _- m at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 Z9 M% i/ j9 g/ S" E# N8 @% D at ActionGroupDemo.main(ActionGroupDemo.java:67)
. E: M+ x- N) F3 p6 s6 Q
! v2 s$ i/ ^5 b! B* V7 _; |: J3 ?4 w# `/ g* | _
import swarm.objectbase.SwarmImpl;0 F4 g/ i: H0 w$ z
import swarm.objectbase.Swarm;! Z% k9 Y% {! n( N
import swarm.activity.ScheduleImpl;0 L! ~/ x3 x/ |
import swarm.activity.Activity;$ K4 x& g# [. ]+ t1 |8 c
import swarm.activity.ActionGroupImpl;& K# B u0 I/ `* A1 q
import swarm.collections.ListImpl;
) g) M. @0 m1 i7 x' g' n% f! Oimport swarm.defobj.Zone;
) R s3 Y! n: L% {0 }import swarm.Globals;
' }+ C& R* Y/ h: yimport swarm.Selector;
9 R6 V: c* w: o8 r* Uimport swarm.activity.ActionGroup; 3 v* O7 D% D F6 b
class Agent {
1 @5 L% s4 P1 }3 s% }5 l char id;
+ O, x7 E; n& o( i+ V7 K$ @
j9 Z5 m$ C. {* i8 u' d# z Agent(char id) {
; Q( ~/ Z2 F4 @5 r" D( J" r- A this.id = id;
; B o1 o8 v w" d9 U }
0 a7 L- x# U/ t, g7 {
0 f: S! u) S/ h public void agentStep() {
2 j0 W/ f9 ?5 X. U System.out.println(id + ":" + Globals.env.getCurrentTime());0 u0 C/ Q) A4 }" O+ n
}/ T7 c6 Y. S6 [% A# o7 r
}
' |- p! \, T5 n' g/ {# J H9 ? p: ]% ~
public class ActionGroupDemo extends SwarmImpl {
; o6 U' X* @- l5 w' K3 a7 ~4 k ScheduleImpl schedule;
' P$ M) Q+ F# U' ^ ActionGroupImpl actionGroup;
3 L* c- Y, a& j! Y! ^& ^9 N ListImpl list;
( n" ^4 \5 k2 a, z char Id = 'a';
- Z. D6 w9 E. h8 ]
0 b2 n+ n" o! T i ActionGroupDemo(Zone aZone) {
4 R4 u) E' K( B5 ]' Q super(aZone);. p( v& Z R& Q2 ^/ y5 R
list = new ListImpl(aZone);! e4 g/ e: u' N* m1 I
swarmSetp();
( i/ f- P& I3 V- L6 R V( w# w3 s actionGroup = new ActionGroupImpl(aZone);
B6 B. K- A1 ]5 v. y: G schedule = new ScheduleImpl(aZone);
: V5 Z7 A% i$ [" Y8 Z1 E try {
4 b; k) h- M5 G6 I# V, j! L( p% X Selector agentSel = new Selector(Agent.class, "agentStep", false);$ D- w8 e" ^3 |0 _
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 E( f4 @' B- C0 S( m* o2 [
4 N5 J. X2 L c; d7 q5 d actionGroup.createActionForEach$message(list, agentSel);
3 R7 L5 a u$ g/ y actionGroup.createActionTo$message(this, swarmSel);
$ A; V0 |! \+ E- Y7 I schedule.at$createAction(0, actionGroup);
# u0 i/ {1 B! I8 m9 w schedule.at$createAction(1, actionGroup);
6 M* g6 x- j+ R- e6 g# ?0 ]* ~ schedule.at$createAction(2, actionGroup);: O. D; @/ T9 b4 |2 I
. M' q# H+ }& u" w } catch (Exception e) {
! T) [* F- ~& F `0 N e.printStackTrace(System.err);
0 I5 X4 l6 v9 _" t' e; b //System.out.println(e);. X) ~' w2 z* o; |
System.exit(1);5 _: o- ^% f7 O; `5 H# n( j; y w8 @
}6 [$ y0 \- A' q+ q( S8 \! y. T Z
2 p' p* C! h: g s4 h# f% u% \
0 B" [$ {% F g" q }4 g5 y8 S) t' B5 ^
0 t. O! |1 Z$ l; A0 L* K private void swarmSetp() {5 I) X2 J+ M3 z; x
list.addLast(new Agent(Id));
* D4 d- [4 O* [# \ Id++;* w6 \6 }/ L% N: U* V! B7 [4 T
}- M4 _" M' r( n; ]
9 S% |3 K! d: S1 n- H$ B. h public Activity activateIn(Swarm context) {/ I% \0 b. M* u9 w% c
super.activateIn(context);
; M, [. c( `" ~6 r. r schedule.activateIn(this);$ z' [! r: q: n
return getActivity();
. Q0 h: X0 }" t1 G. [6 k i }
1 d, `6 M% Q. K" h! L9 o R8 n8 m& d3 c, h
public static void main(String[] args) {
& S5 e5 |& f- N- }8 l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" O* e9 M7 _" f `1 Q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 k ^* ^- c8 A
swarms.buildObjects();# j+ I3 n! [- I
swarms.buildActions();% a! d5 ?, i1 ?+ }# t
swarms.activateIn(null).run();
0 ^& q9 M4 V& W: ^8 P }
4 C% C) A p: b: m* V) d: D
8 D% ^# d5 {3 ?+ h! b# g} |
|