|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 m+ c0 e+ Y7 P, N$ R! f8 _
2 e8 }( P7 |' H( N( }7 ~3 e( k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. E z$ N8 I/ m% I- {2 f" f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 f% X* S+ U: l/ @
swarm.SignatureNotFoundException; R9 S* z- o* j1 \
at swarm.Selector.<init>(Selector.java:76), q* I @& x% y. h/ n- i
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 x2 N( I. U z at ActionGroupDemo.main(ActionGroupDemo.java:67)
* d! f4 z! [$ J$ n) E% K* z+ e* j W2 \/ _- g; d' |
* G2 G/ L. q, y1 S
import swarm.objectbase.SwarmImpl;, U: F3 K, C5 E, ]) ~' n9 o d
import swarm.objectbase.Swarm;
: m( t& J8 g* }. ^; e$ @import swarm.activity.ScheduleImpl;. l# [! v7 S4 e3 i( U6 Q
import swarm.activity.Activity;, h8 H# ^% D( b* m9 ~5 v0 A
import swarm.activity.ActionGroupImpl;# v* T% Y( M) O1 b+ P8 b# u) p5 s5 D
import swarm.collections.ListImpl;" a# h w* D; W9 s! U s$ K( f
import swarm.defobj.Zone;
6 U1 T( l$ b1 F zimport swarm.Globals;
: B0 M5 G. u0 m6 u) iimport swarm.Selector;2 ]. C, Y8 X% I3 y' Y4 c) I
import swarm.activity.ActionGroup; # a0 G, d! w" O4 m6 | [- a+ j
class Agent {
" u$ ~) Q( K6 _4 e char id;
W* _& V3 Q2 f6 n: C% \7 ?" r! J z8 G7 H" S% u; ^7 X0 {. o0 m
Agent(char id) {
; c: R" M* G7 W5 L this.id = id;
, G5 u9 r: A) e- `: N% a$ v, D+ D }6 L& _. a" O0 \) N+ h2 A$ Y
9 I' i A' h; b public void agentStep() {
8 [, n+ J8 v, T! [ System.out.println(id + ":" + Globals.env.getCurrentTime());
2 P% k$ P7 V: E. t' O }- m3 o, m5 f' ^7 J5 H
}7 m" e7 u% ^$ W9 N2 M7 r6 C
: `" Q% m6 H) n. Gpublic class ActionGroupDemo extends SwarmImpl {4 D9 |" ^4 P4 R" h! h+ B
ScheduleImpl schedule;
% ~- q" a$ _. u1 n) K( q- Q ActionGroupImpl actionGroup;
0 C0 O3 x2 w+ f! j2 \9 p ListImpl list;; H. K. N$ \) F: d0 n( Z4 q2 I
char Id = 'a';9 u/ C( a g1 A: l% U, G- I
, K. R( k( p- w: _9 ~9 f; w
ActionGroupDemo(Zone aZone) {" d% o1 q( ?3 |* {, ^' Z
super(aZone);
. X! A1 S' _% a6 \, b; ^+ d list = new ListImpl(aZone);- i6 {$ S- D1 `2 p6 x8 ^' \3 ]; d
swarmSetp();* B" p/ z4 d, b1 ^1 Y& Q
actionGroup = new ActionGroupImpl(aZone);
( E# i5 ?$ G+ o2 a& s% h schedule = new ScheduleImpl(aZone);
% _& X. Z+ v% s6 k' n$ c0 q try {
! P }# ^5 n" H8 D c4 K Selector agentSel = new Selector(Agent.class, "agentStep", false);- w0 B4 U1 f9 S% L5 f9 Q' N
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- N3 I% K8 b3 l$ F y- x0 n0 k( z
7 C# \1 A$ \) N& @8 H actionGroup.createActionForEach$message(list, agentSel);5 k( U7 H7 I2 k' {8 i3 g( a
actionGroup.createActionTo$message(this, swarmSel);
) R! O8 q. m0 x. ~ q- C+ j schedule.at$createAction(0, actionGroup);* z K6 L# m3 ~/ h D4 s
schedule.at$createAction(1, actionGroup);
8 z" P) h+ O. J! n1 _1 j2 M& f schedule.at$createAction(2, actionGroup);
" ~$ \% p T$ z
/ U. Q2 K7 A: T( ~6 U* H- i } catch (Exception e) {, S3 m1 G, G2 g% j
e.printStackTrace(System.err);* `& m# v& l" y% U/ x- X( a H
//System.out.println(e);* e0 M; V* K$ W+ p9 N( x ?. Q. D
System.exit(1);
, ?8 b' Q1 N# F5 I Q) M$ E6 y }
& z% \! \; F* o
5 |: m: i1 |/ C+ N! E9 C3 G: F. \
5 Y) b) x$ J( g# {+ k% e/ g }
/ ~5 F5 D2 f9 t: V* N+ ~ E; W/ w- e# n/ w8 e( p
private void swarmSetp() { Z8 C( e& T6 D
list.addLast(new Agent(Id));
! s+ V" t3 u, G" {; F+ v- P, W0 W Id++;
# S, W" Q* {+ C4 L }
" T; k2 P; K2 r% v* W8 v& Z! ~% y
public Activity activateIn(Swarm context) {7 v: @1 r9 ?: \% u( q1 _4 r
super.activateIn(context);
4 R z8 Y% S/ e& e7 [ schedule.activateIn(this);
, P4 {" ?3 C! }: y0 y' U' i$ S return getActivity();& \5 Y* S( u/ _% Q
}
$ |' b- D# `$ C# S2 j/ |# i6 D
- @0 N6 G E3 t! H4 E" ^, r- q public static void main(String[] args) {+ }: C8 ~7 h) T
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, z$ H. `0 V/ l5 m
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 Y' Z" K2 B8 n& W! Q
swarms.buildObjects();
, q8 k1 ?4 y7 i \8 `/ p, ?3 N swarms.buildActions();
* {- d$ L: ^2 n: r# {. h+ W+ i( C swarms.activateIn(null).run();
) j/ E1 P5 P# d5 K }
" R, \8 ]* z' c" t0 L2 g4 s/ T8 Q$ G$ a0 P6 J1 D
} |
|