|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 u. R9 y* R* n: m" {
: ^/ B) M4 L) J s1 G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 a8 O! M" @$ G& u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: u: T+ [6 H6 {( E
swarm.SignatureNotFoundException, i: B1 Y) Q+ a
at swarm.Selector.<init>(Selector.java:76)
- D/ [0 u1 I. ~+ ]: ~. o4 d4 Y at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 W8 O3 z5 o) o7 p
at ActionGroupDemo.main(ActionGroupDemo.java:67)
) v4 A8 ?2 E0 |! D
/ w! a* ?6 p6 V9 e0 y0 E$ B' j8 ?0 W; S6 }2 k5 b: R5 e- C
import swarm.objectbase.SwarmImpl;
# [. h4 _3 K% ^% ?6 Kimport swarm.objectbase.Swarm;6 r4 J4 B+ Q# m! ]7 H( Q' |* r
import swarm.activity.ScheduleImpl;9 V1 A0 m6 D) V7 ?' f6 X3 D# g8 Y
import swarm.activity.Activity;; g" F2 d$ [0 e# d& ~" c N# g
import swarm.activity.ActionGroupImpl;
* }$ e9 S/ B; A& jimport swarm.collections.ListImpl;% S7 _( l/ l) X) |. b
import swarm.defobj.Zone;
1 K( E% T$ s1 S2 {. y2 `import swarm.Globals;
, ]# k0 G4 r$ u7 U. W2 W3 ]- Dimport swarm.Selector;4 O2 y/ J/ z# i8 r
import swarm.activity.ActionGroup; & O$ }8 z8 A$ x) V, n
class Agent {
# }' k) {7 ?) m7 e" Y9 \3 s char id;
6 Q2 I. A, f. P" }: Y2 H' C$ L& b/ Y- ^% J
Agent(char id) {
; }. G% U; F, c: g* ^ this.id = id;
, N, g+ v3 Q- q9 H) ?7 H }
, c* ]$ P8 e9 A9 d- b4 n, X
# f8 J: F) h" f* u public void agentStep() {5 z. B6 t1 L- Y% x% e( j% Q, ~
System.out.println(id + ":" + Globals.env.getCurrentTime());
: k) S, K" R& ?2 V$ g1 e* r }
6 i9 S$ H1 W& Y}
: Q& z {; t. i% t) I
4 V- V: t3 ~; cpublic class ActionGroupDemo extends SwarmImpl {
+ e0 e8 s1 T/ `& R" i ScheduleImpl schedule;3 k) ?3 n0 D/ F, g' h5 @! v9 W; {" ^
ActionGroupImpl actionGroup;
2 X8 |& u9 P0 F ListImpl list;
" b/ U4 ^. z9 f" V char Id = 'a';
5 |9 h5 C* ~3 p* l1 [1 i( V$ L; r3 ?$ }: U' D5 w
ActionGroupDemo(Zone aZone) {
# _1 S# k6 i. B7 \' l" n super(aZone);
, j" s$ n# p2 b list = new ListImpl(aZone);( t6 R1 f/ [' E6 t) R0 I3 {
swarmSetp();
% G- m. |( x3 C" C$ ? actionGroup = new ActionGroupImpl(aZone);- }8 r% x) _5 Q; l, q; k9 r
schedule = new ScheduleImpl(aZone);% v% j5 W, G' Q8 V/ v% h: v' g
try {
+ E( i. w2 H& o V/ D+ |! L4 U D6 W Selector agentSel = new Selector(Agent.class, "agentStep", false);) e# Q7 y& F' B( H0 W/ w; m
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 ~3 j4 F! [4 r& U
% Z6 ~3 n: L+ |; O$ ]* @/ x actionGroup.createActionForEach$message(list, agentSel);! `* i3 N. ^8 e" n
actionGroup.createActionTo$message(this, swarmSel);
; y$ T$ \3 E* f schedule.at$createAction(0, actionGroup);$ c. {1 X( t6 ?# T
schedule.at$createAction(1, actionGroup);7 T8 B5 C; Y/ G
schedule.at$createAction(2, actionGroup);5 h+ {' P4 u6 k6 }; @' I
& @8 F; S: G( M3 v* E3 y ?
} catch (Exception e) {
. d. P6 _ E4 p% j$ v! d& X e.printStackTrace(System.err);! R: o+ A) b C
//System.out.println(e);
8 S3 @# u. H# U. { System.exit(1);
" K' p- N0 Z$ u }; l( z1 N) Y% z d# `" @, @. G
( g3 {/ Q% O$ t- Y% G
% b; R" D$ C2 @& r }
8 K5 Y5 s6 P- i; O& E5 e3 W' W( G8 b! J4 F6 d3 X& a, k5 E5 u5 m
private void swarmSetp() {
( |3 U1 e4 C7 m8 g8 E list.addLast(new Agent(Id));& k* g; Q. n! N' G9 t0 i: X4 ^
Id++;
4 Y$ {6 e. }; R5 R }- r9 S2 j2 |: k: @
) h w( J5 k" Q6 r( k
public Activity activateIn(Swarm context) {
1 m4 o% G! u' U! C, w super.activateIn(context);
; T5 ]& q: Y3 W. G* c schedule.activateIn(this);) D J8 j A' I) p; a
return getActivity();/ q$ x3 [9 S% G2 ]
}2 g) n1 {9 e! X* F& U, m; f
1 D! ^5 h% v' Q# z/ }4 M
public static void main(String[] args) {2 U( w+ a, ]& {% z' A- T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 c+ R, d% f1 z4 r F! N. O% i- ?
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! \$ s0 h+ V0 ^9 ~
swarms.buildObjects();
) x/ f" Y. x$ t: r swarms.buildActions();6 F3 D# c+ a# }/ b2 U
swarms.activateIn(null).run();/ g% }% [6 w) B6 x1 U
}
' ~, K" l5 y6 Q7 W |
V/ z8 `5 m& O8 [} |
|