|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; F" R! R: r% ?' Z3 Q) W: C% N! Z% U1 Y* }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 N& D B' T5 t1 f z+ X1 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% R3 g o: j4 {! h, l" Dswarm.SignatureNotFoundException4 F4 U! z2 r' ~7 K. a" \* e
at swarm.Selector.<init>(Selector.java:76)* M: R# h( D. `; k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
t$ c; R/ k# y" E- T at ActionGroupDemo.main(ActionGroupDemo.java:67)$ m) k4 ]0 M) y7 c; g
% N U+ t3 c/ U% p* l2 E/ d; |
5 C$ q1 O3 T$ J" _7 [ Y" J
import swarm.objectbase.SwarmImpl;
0 J9 [# W0 S. k: I! Zimport swarm.objectbase.Swarm;
4 T/ O* T3 _" }import swarm.activity.ScheduleImpl;
' D: w. g% _: [$ ~9 L# X, Pimport swarm.activity.Activity;
# N$ W; T7 B9 w( @import swarm.activity.ActionGroupImpl;
: X7 p& E& n/ I% limport swarm.collections.ListImpl;9 }- C) c4 D# w7 E
import swarm.defobj.Zone;
) z. c: A9 {: P. fimport swarm.Globals;
7 K9 `; h+ ]8 Z5 Z) l2 Zimport swarm.Selector;
- d! k$ R, o: a* O& ~1 @import swarm.activity.ActionGroup;
) A! U& {5 {9 V i, [' U! Rclass Agent {3 c: \! Y2 f# A+ C. ^$ u
char id;
( n% j! G" @; }# e! u# P7 F' w
# B' N& g% n$ J/ O( T o: O# b5 s Agent(char id) {2 s( A) `* U; f; e8 v& H% \9 i- s% A$ k
this.id = id;) e: j6 z. O8 w% [4 w
}2 U: {2 Q1 n' j/ D7 |& p6 R6 D
, b) C- j9 n9 n1 L public void agentStep() {6 J1 ^8 h4 e0 I b* L+ n
System.out.println(id + ":" + Globals.env.getCurrentTime());
J, C6 A+ F! Q9 W }
) `( |! q! ^9 `* G' _9 ]9 t}
8 H: @& [9 |& M0 h0 u7 E# r" f( o3 r, {% q
public class ActionGroupDemo extends SwarmImpl {
1 F' R0 {) g. p ScheduleImpl schedule;: I: d2 y" L; R
ActionGroupImpl actionGroup;
8 {4 R3 E' G, d7 z4 e3 J6 s ListImpl list;
# Y R$ q, |' X1 E6 |1 G) k char Id = 'a';
3 i. E3 \) N- c& G8 @# ?
: A8 H. p+ n$ y- Y) o8 q ActionGroupDemo(Zone aZone) {6 s, Q- [" U; d3 s
super(aZone);
, ~2 T4 j. F/ E6 H0 x list = new ListImpl(aZone);4 s4 Q0 i- D4 N5 e
swarmSetp();
" T1 {3 M: t' V6 ~ I0 e) D( ?& t actionGroup = new ActionGroupImpl(aZone); J( ?' d+ c$ `+ c @) E0 _
schedule = new ScheduleImpl(aZone);; G; H: |9 n0 z. W/ W$ `
try {& w9 Q/ I! b6 _- Z f: g. C3 o
Selector agentSel = new Selector(Agent.class, "agentStep", false);
' G1 ~: i* M4 H* v* L' K7 L* V4 V( Z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 e( T0 R3 C! l
9 _: q1 r2 y S7 g/ m8 U actionGroup.createActionForEach$message(list, agentSel);
1 O9 V5 V e7 `& V8 D* O actionGroup.createActionTo$message(this, swarmSel);
% n Q* n6 Z+ f# U! G6 t3 a schedule.at$createAction(0, actionGroup); e5 q+ X7 u+ Z3 d
schedule.at$createAction(1, actionGroup);& s0 F% E% q, e/ X n7 K
schedule.at$createAction(2, actionGroup);
8 [; `/ g2 s: Y. d3 K4 o3 i
0 b1 ?% k8 F0 {) n4 w3 f; l8 D } catch (Exception e) {: T% ~+ F% i0 O7 D0 `, b1 O" s) H+ \9 C
e.printStackTrace(System.err);" ?: U* Z% i9 F# c
//System.out.println(e);+ u4 P4 u7 D2 p% O9 X$ a
System.exit(1);8 c% R% X# D% |' A% e$ x
}
6 T9 M# e) G- D3 ~6 L+ p: P/ R6 f- G( k- ~- h
/ J+ C7 ?* C! E* C; H$ x
}* M0 E' X7 X0 G: O; V% ~" f( H
- e9 l! w/ x, J% ]& P
private void swarmSetp() {: i1 s. P! c& y8 R7 F- v
list.addLast(new Agent(Id));; y2 b& d( q3 p/ }% R( j
Id++;. ~5 j$ Y- P/ M
}
2 G- x% O8 b/ K( j, q8 T( ?
: Q% P* D8 i7 ?$ e1 E* s) E public Activity activateIn(Swarm context) {: K# E8 J2 d- H: _, R
super.activateIn(context);
# [" ~% a2 @4 {: z: L, B schedule.activateIn(this);3 \3 l: K b/ Y$ s1 v
return getActivity();
4 N- y( X) v5 s, j; i) M" ?6 g$ e$ a }
$ n" G% h5 }- e" ]- m9 |! \8 ]% z8 e5 {
( x! I, `5 f- j public static void main(String[] args) {
$ t; Z$ A1 r. K/ l+ z1 V2 @ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* J3 ^) `9 `! {6 [2 A2 \ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 f, U' B3 n0 @7 x# k swarms.buildObjects();2 Q0 n; I( K+ E' J! e" d t8 E/ x
swarms.buildActions();% U5 G) h- y7 w; I) c
swarms.activateIn(null).run();
+ W% a m1 z) r4 I* u9 } }
+ I/ F d9 B! _ K7 p1 b9 K
. o( e- }$ P- R( o" T' I} |
|