|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: J+ p4 H- l$ b3 a& \ t
6 n$ s7 g) f c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ J0 b, C( B& ]1 L' ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 O! r* Q' x( @3 M8 J- U
swarm.SignatureNotFoundException$ p: b+ t3 T8 s0 t% v
at swarm.Selector.<init>(Selector.java:76)7 n4 ~, d k" w- V
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& V" ]- F0 P" x/ F, I9 E at ActionGroupDemo.main(ActionGroupDemo.java:67)! G- d y: T# [$ d; x
& S1 T# ^- f2 ?6 T% t& n
+ S! p' g, {. R: j; |' q- ?import swarm.objectbase.SwarmImpl;
6 U6 F5 ]6 C8 n7 C; B' \import swarm.objectbase.Swarm;
4 H8 H8 ~1 |1 `/ n! vimport swarm.activity.ScheduleImpl;$ l7 o7 P/ m& K% N5 w
import swarm.activity.Activity;
6 C9 d; {& s6 Q5 \2 Gimport swarm.activity.ActionGroupImpl;
' N( F& o# n- Pimport swarm.collections.ListImpl;! C t O/ E! I( \: h) ~
import swarm.defobj.Zone;
* w" i C6 c% P2 D& z5 e" X |import swarm.Globals;
" U) n2 f0 k% Limport swarm.Selector;
2 b2 x0 J3 V; R Ximport swarm.activity.ActionGroup; $ x& ~# `$ N+ g. x n: v$ K
class Agent {. a' V* p) {. _$ c+ b6 E; j
char id;* u" U8 t9 I& p0 w* {, Q! O
0 o% i- z" C$ E* \8 X& \9 z% R8 I Agent(char id) {. U2 c. c2 k$ Y2 m0 T
this.id = id;
4 y2 j6 y( W# W, J$ f: j; ` }
: q" {, |% ?! n8 l m- W
* | ]3 O; w: n public void agentStep() {
8 a2 Z @, s9 N) z, V; W5 i8 F System.out.println(id + ":" + Globals.env.getCurrentTime());& j2 H5 i2 |( b" N4 ]
}- j) @$ E# v" J$ L( q0 @
}
1 Z9 r7 }, [: @) g: K+ v3 E
6 J4 m" I. `: f2 P. y9 Ypublic class ActionGroupDemo extends SwarmImpl {
% m& S" z- C1 T3 }" Y- b( p% M ScheduleImpl schedule;6 W; u+ p* a/ C* c$ i
ActionGroupImpl actionGroup;* ^5 L+ |1 |/ v1 P: [8 [1 s1 `7 U7 L
ListImpl list;; A5 G) G7 Z& D/ b$ n; V
char Id = 'a';
0 r7 N* L4 J% V7 t/ T+ d- N+ H, D: T* d ~2 j
ActionGroupDemo(Zone aZone) {- g2 z8 F8 @# r8 G1 t1 t
super(aZone);
. \ T' J( b8 I6 Y list = new ListImpl(aZone);
# a5 T4 D8 @; n0 X# O swarmSetp();
, N/ L5 \+ P& A8 e* M6 q2 w actionGroup = new ActionGroupImpl(aZone);; y. e6 Z" l e
schedule = new ScheduleImpl(aZone);
) _8 \$ Q5 P4 S9 U2 ^0 V$ _ try {
* s7 a% B# v% j Selector agentSel = new Selector(Agent.class, "agentStep", false);
R$ t5 s- p8 Z0 \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 R0 e' e) Q) ?, x+ ]8 P
. t- l3 ]% ^. k* V( ^
actionGroup.createActionForEach$message(list, agentSel);8 @* C- p* A2 [# N7 E# z
actionGroup.createActionTo$message(this, swarmSel);
e" m/ ?6 b9 y7 p3 H* V4 P schedule.at$createAction(0, actionGroup); D0 ~/ H! z8 i7 s
schedule.at$createAction(1, actionGroup);- @ e, Q) h/ [8 j( r- o
schedule.at$createAction(2, actionGroup);
6 D# M5 d5 \& e3 {- c5 b$ S" I5 G% _0 W7 w. p3 N/ F1 z
} catch (Exception e) {
6 A3 w0 ?4 P/ ^! I/ i e.printStackTrace(System.err);
% j5 x. G- _5 }6 t8 | { //System.out.println(e);7 C# C% [5 I! \7 j3 d# _# r
System.exit(1);1 }9 ]$ p; ^( F Q1 h9 P
}& j2 _. E( a& _ H9 N' z/ f% }5 C }
; T- p7 _0 A$ C9 I' _/ V1 D9 |5 s) Y) \. S& Y
}
# W: h4 F( V: Y9 X+ c
2 U6 o9 T: Q" Z. S A private void swarmSetp() {
" O. g" S3 t s, V& c list.addLast(new Agent(Id));+ u2 ?$ X4 m0 `) J9 w
Id++;
9 _2 A3 a' |% ~. @; n! E( k }
0 R, L% o6 X: T' P2 j
, h2 i) R8 H* r/ t6 q! [: P public Activity activateIn(Swarm context) {
: Q6 g4 W5 t( ?6 X9 g$ F super.activateIn(context);& u3 j) M* l1 i w: _- ]0 W6 j1 f
schedule.activateIn(this);
$ {4 W1 m6 i# ?. E) r6 t) s# {# u* o return getActivity();6 q& z7 [9 k, f6 W5 \9 T8 F( F
}3 N1 [( y; y/ p9 q. p2 I
: r9 |( W; P6 N) f. q8 {4 S! f
public static void main(String[] args) {
- W1 z3 ~& Y. C3 g Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 `; F+ k9 ]1 b& b
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 T2 Y% t9 `, t& I swarms.buildObjects();
1 [5 s+ d" @( s swarms.buildActions();6 p' X% ^4 C; y9 o4 c$ o. N N) g" l
swarms.activateIn(null).run();
' x- \0 B9 j5 C! f }
' j: |' H8 x. G* @) R, v8 C- w/ ], Y: p! W9 p( f5 \
} |
|