|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; b4 j9 G8 N2 w# Z% T
5 A, w, s& q2 e5 M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 U% a9 F( A! G( k; k5 ?! y3 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 {) J ]# w8 f$ [. O' O! J6 K+ uswarm.SignatureNotFoundException; E% e0 w; f+ a& k. Y
at swarm.Selector.<init>(Selector.java:76)) M7 [+ r1 a& |) G! F7 F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; n% M# b+ N3 i at ActionGroupDemo.main(ActionGroupDemo.java:67)
- X( Y0 H; h9 ^7 E) v2 s5 W- f
w8 E8 ` h t1 w4 v5 r% M7 ]: d7 B; f9 j9 N
import swarm.objectbase.SwarmImpl;
! d1 N; X& } N8 v/ @$ e+ Yimport swarm.objectbase.Swarm;! U' M2 K9 x, m
import swarm.activity.ScheduleImpl;
; a# b" ?7 L4 _8 iimport swarm.activity.Activity;* j, y- P' M# z1 o. R8 W4 H
import swarm.activity.ActionGroupImpl;6 L* B8 V( Y8 I: b' I' y1 d
import swarm.collections.ListImpl;
( h% [" P( ^( {1 B0 P! pimport swarm.defobj.Zone;
6 E2 ?: S6 s& M4 \6 Iimport swarm.Globals;4 x" {5 v; S8 K* A& D; A; _% }$ f
import swarm.Selector;
4 W. m" b" l3 V) H* o+ L2 Simport swarm.activity.ActionGroup; ( Y* a' z: S, r' A
class Agent {
0 E; V2 t0 Z$ V/ ~) _: y' C" l char id;" ~: y1 ?5 h8 E8 y ~
( s; r' g/ k% h5 f9 S! ~7 P
Agent(char id) {; A! N$ N1 ^! G6 u0 l# x) @
this.id = id;0 |/ m6 k) |, P" L2 o
}6 `$ p- K) J. E- i2 y$ o7 f
& D2 M/ \2 C) [" W/ I3 E4 T
public void agentStep() { U F* P8 G/ f: V+ c% m
System.out.println(id + ":" + Globals.env.getCurrentTime());
) O7 t8 h6 Y' R3 ~) n }
' N$ o- I/ Q9 J1 [: Q}+ \; K8 b' F$ A
0 T8 p& w o9 W( f+ T3 h
public class ActionGroupDemo extends SwarmImpl {( e0 s" L8 b! K5 @
ScheduleImpl schedule;: d6 R* ~( F" W7 i
ActionGroupImpl actionGroup;
- N1 ]9 U* ? j1 c1 V/ _# E0 b- e: Y ListImpl list;
- l' P( ^- y8 J$ \7 Q3 `, y& V# h char Id = 'a';9 a0 l# {- h, z# `$ c" S# Q1 b$ ?1 N# l" X
9 [$ [/ w7 ~( ~* l. g. S+ j8 @' k s# R
ActionGroupDemo(Zone aZone) {* \, \* f/ ?9 K
super(aZone); y; t# f8 Z; \& ^& j
list = new ListImpl(aZone);2 n( ]1 M2 V* h3 t
swarmSetp();
0 A$ ~6 B l. x) v+ Y5 i" W actionGroup = new ActionGroupImpl(aZone);3 |4 c. D# q0 v1 B. t5 k2 Q9 S* w
schedule = new ScheduleImpl(aZone);
$ c8 ?/ ], `; ` try {
6 `$ q# B+ P' m, J2 n5 R& n# } Selector agentSel = new Selector(Agent.class, "agentStep", false);
; B+ r% ?5 G; [1 r1 y' W ^" c Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" _0 R( U$ L# b3 W
; d3 P& ]1 }* X8 b actionGroup.createActionForEach$message(list, agentSel);
& g7 K' r+ }. z9 E) c Y actionGroup.createActionTo$message(this, swarmSel);, K' V% L/ J- W, N( H1 M) p- [% l
schedule.at$createAction(0, actionGroup);
! W @/ n) ~6 l2 @ schedule.at$createAction(1, actionGroup);
6 H$ Z1 X6 {! E% l- L schedule.at$createAction(2, actionGroup);
$ N: @- y) l6 g! a
/ Y- y- S! E5 R j. G: l } catch (Exception e) {
3 v$ U# D& Q! @- d$ Y7 `5 v e.printStackTrace(System.err);% l" C8 o+ N( W; w+ |4 C
//System.out.println(e);6 i, ?2 [2 l- T& O' k, m Y
System.exit(1);
9 H- i% Y, o2 x: W8 Z }
4 r4 X" t. a& w& E$ E5 Y+ V9 h4 Z8 H- M9 Y& q& ^. ^+ X5 n
6 l- g. V9 U" x6 P# [6 T p6 t
}
) M3 d, V5 w$ V2 ^% x! q- ^" v% |
private void swarmSetp() {7 v S+ D! l2 b2 f. f& G
list.addLast(new Agent(Id));
4 F3 M& I: n8 z2 g1 C+ c, g Id++;' b$ N% ]3 @/ H$ p
}
. u% \7 y' V3 c
+ U6 v# C7 v* t$ H. ^ public Activity activateIn(Swarm context) {
: U. ]$ `& l2 r# y5 A; c super.activateIn(context);
4 n9 e, R. ~ e4 P5 v) A9 Z schedule.activateIn(this);
' f, f4 P* q ^6 s _+ X$ {8 A return getActivity();
( R k% {$ f2 G& {4 w h }4 |* N+ J" `8 J3 v$ @
; p2 @( p' H6 @4 O \, d
public static void main(String[] args) {7 n) Y8 N) p% o& s: z: {) P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- a1 X( _. E1 G. t
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 E" D9 G. m% H2 A/ ]: J7 D/ n7 `% q
swarms.buildObjects();
4 N9 N6 @. r! |: A" ~ swarms.buildActions();, y z2 I3 f4 `
swarms.activateIn(null).run();. q" m4 {, U3 s& j/ f
}
$ K. P g7 g5 f! B* @
# z1 _$ g8 d9 ~9 g5 F} |
|