|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& d8 I+ I/ l+ Q7 i6 ~2 V; Y, ]' [6 f1 w/ s2 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% ?* Z- X1 i) c1 ^ U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 F6 V9 V) ~/ u2 V' j
swarm.SignatureNotFoundException! ^6 c. Z8 g3 V4 w
at swarm.Selector.<init>(Selector.java:76)8 n6 A4 D y- B& z, i5 Q
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 D& Q$ G7 }0 I. x
at ActionGroupDemo.main(ActionGroupDemo.java:67): ~# T t. V8 w4 | e( p# y
* q6 j, G) ?' a! C" _8 i, p: K& j
/ b8 e$ L4 T2 {/ D5 A: z E
import swarm.objectbase.SwarmImpl;
; W. n) g2 f, D7 M$ Y! Qimport swarm.objectbase.Swarm;
9 Z; l& P( x. m$ |" J) L! c4 H- @import swarm.activity.ScheduleImpl;
! P, W6 L5 z/ |+ _8 j; `0 Limport swarm.activity.Activity;' a1 V0 G- x' n* b
import swarm.activity.ActionGroupImpl;
: r2 g. O3 A4 timport swarm.collections.ListImpl;$ {* ~2 R2 d. z0 Z& X( `1 k
import swarm.defobj.Zone;
- ^) ~! H0 p4 n3 v6 b% ~import swarm.Globals;1 h2 o) I" l; o. g# @( X
import swarm.Selector;( R0 S& H. \; B. ?! L+ W( C3 j
import swarm.activity.ActionGroup; 8 e, J. O3 |" I5 g
class Agent {6 ]' ?2 ~& x( [" n1 j4 _
char id;1 j p9 k+ Y" ~4 ?9 }
! X* x, i8 U4 G8 M1 K! `) y F8 b Agent(char id) {7 W' d G2 _4 D* P
this.id = id;
' R* J- p$ S! @, k }
8 }" i( K$ ?7 U" E! q" c6 o; b
& L. ^! `( g ^4 Y2 m6 _; t public void agentStep() {
4 Q4 I% P8 P- s8 N: s System.out.println(id + ":" + Globals.env.getCurrentTime());/ n, Y6 _3 W5 @6 `: F
}( a* x3 R( ?! x3 Q& E! v' K9 V
}
: w! j$ r& X8 a: m3 w2 T! \) q- a0 D
public class ActionGroupDemo extends SwarmImpl {$ t1 K2 z8 ^% z. g# G+ Y
ScheduleImpl schedule;! f7 D5 D) l. `; @
ActionGroupImpl actionGroup;) W( d5 a2 R; I1 S6 z
ListImpl list;4 ?- t5 U$ ?8 [1 i
char Id = 'a';# r7 W: S% z7 I. m' L
5 w+ ~6 Z' E4 |4 r* Y ActionGroupDemo(Zone aZone) {
7 `( [6 H6 F* M* P7 O+ y5 ^5 J) w% h super(aZone);2 T$ \% F4 R9 z: M. X8 f* u1 j
list = new ListImpl(aZone);
% Y# r, X' @9 {; F \1 ? swarmSetp();6 [8 M1 V$ f5 q, F
actionGroup = new ActionGroupImpl(aZone);3 C) l. U; C$ _
schedule = new ScheduleImpl(aZone);& |2 {8 N: R2 U" L6 r; c
try {
& j6 |$ _0 A9 g Selector agentSel = new Selector(Agent.class, "agentStep", false);& k) i! {& l* m+ h. C' B, W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: A; e: o \) e/ T' H5 W A
; C N+ a/ |8 l# K5 L) R: C
actionGroup.createActionForEach$message(list, agentSel);
& w: P* g: V" u- I$ a actionGroup.createActionTo$message(this, swarmSel);
! E- O3 Q) T) v1 ^. F. n schedule.at$createAction(0, actionGroup);
. K0 Q; q( p, F/ E schedule.at$createAction(1, actionGroup);
' A9 C0 I/ h. L7 }" z schedule.at$createAction(2, actionGroup);
5 q. J- S! N1 t- L# J
; c" h$ E$ U5 k& ?+ @1 z" T' { } catch (Exception e) {
$ h3 C4 c! F" [# p# s e.printStackTrace(System.err);
! B: g% Y' t$ f- T; A! q //System.out.println(e);
& I/ v+ o% M' F& T) |) ? N System.exit(1);) V& M8 Z+ R6 N; F
}( |& u$ ?* G t! a- |# {
5 n0 y! P' U/ M4 U& {# i/ U5 b! \
% {7 I/ ]& [8 H y3 s+ h- e& L& T
}# s9 K, |2 T# ?$ d
6 a& m, W, l& z+ h
private void swarmSetp() {
( n* H% N* D& V5 T5 n+ K, ` list.addLast(new Agent(Id));8 u& E9 T0 C/ Y8 J/ [2 |5 x: j( R& @/ |
Id++;, q; b3 a7 H9 L& t. t" @1 T
}/ c6 H4 c6 e- |* p6 ?
3 D# Z# Y& }0 J9 W" p' B( U7 w public Activity activateIn(Swarm context) {3 S5 R5 t7 B& T1 v$ r
super.activateIn(context);8 Y" P, I; u9 b+ V& V8 I! ]/ T
schedule.activateIn(this);
6 N0 c2 c% ` p8 y return getActivity();
0 _9 a [, r+ V' f" W$ Y' m }
' ~+ g! f/ r* q7 p7 _3 b; a" y `5 x% U d/ n
public static void main(String[] args) {2 Q* r& ~/ j4 u# }+ s) u
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; \# }6 }* Q7 Y3 p: _% A' o Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 a, Z/ e, k$ X% T' |+ O swarms.buildObjects();- @1 o! G) m$ i/ \# e: \5 Y
swarms.buildActions();" s9 q- a# |; a. Z+ v* d# b+ b
swarms.activateIn(null).run();
' M% \) \ D: z8 r, R; m }
5 p# e- t5 `, W3 l7 `0 ^7 V: v a6 n9 D- k7 |* f# E! W
} |
|