|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: T1 i. I" S: t- u, o$ d5 Y7 f
; h2 u% o: j$ N. `0 Z2 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 B! S' [$ p( U; G2 z0 s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' _1 l8 V3 U' A% [) ~1 m+ v
swarm.SignatureNotFoundException9 ^& c- o3 R$ ^! P; m
at swarm.Selector.<init>(Selector.java:76)2 w5 x" L- b- j5 z
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' Q! M: I2 x u6 M, `3 v
at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 b2 y8 P& [7 L- D, ?2 b1 \7 e- h% g6 u2 A R6 Y) e4 K8 i
& {/ m- d% h# Nimport swarm.objectbase.SwarmImpl;3 E- d& A& r4 S
import swarm.objectbase.Swarm;
# z. E, |- u: @% ~& zimport swarm.activity.ScheduleImpl;% \. T& r* H. y$ x2 m0 n
import swarm.activity.Activity;
1 ~' t" |- ]7 X* t+ |7 n8 e2 mimport swarm.activity.ActionGroupImpl;
" N, o$ s8 x! z' Q7 u0 y# w0 x/ ^import swarm.collections.ListImpl;. @3 p" q S( m: ~3 ]; d/ U( m
import swarm.defobj.Zone; ) x0 t3 i4 H" y& i3 X
import swarm.Globals;
2 z/ \) t! a3 E2 uimport swarm.Selector;
$ C) l- X9 b( }% _3 X1 mimport swarm.activity.ActionGroup;
9 ~2 B5 p) y4 g! T5 I" Y0 Kclass Agent {
3 Q- P' N2 t: P- _. [2 C. g char id;; @2 X8 ]+ m; P5 A2 S( @; r
9 z3 i7 \+ u3 k2 D n( `& h
Agent(char id) {
+ O! p x" Z* b. s( v this.id = id;
8 J" K9 u+ j# g9 S4 ?4 K }
; W) W8 {2 J# [$ ^/ [7 l0 D: N. O, V
public void agentStep() {
8 C ^9 e& Y2 v6 u System.out.println(id + ":" + Globals.env.getCurrentTime());% k& u& D% ~% E! X0 F
}5 j, Y2 ]( @- K4 B( E2 O4 J/ I
}9 S" e7 o& O+ ?, o! @# [0 m
0 b" g4 F% A0 R* a1 W) Bpublic class ActionGroupDemo extends SwarmImpl {0 }+ M# }" }7 S5 `& H" B
ScheduleImpl schedule;
/ K0 e7 ^; H: a9 ?% h) _4 ]9 o ActionGroupImpl actionGroup;
# s: [# F1 K! {8 j* `5 U ListImpl list;9 U1 {# p# D; H9 A' y5 w2 {
char Id = 'a';4 r5 B- F9 l( F4 b& p
6 @% l7 x, k/ P3 R) y ActionGroupDemo(Zone aZone) {
: R+ s* w$ b0 r- q+ x super(aZone);
- V& l5 W# s2 ^4 s e3 \2 D% B" \ list = new ListImpl(aZone);7 o8 Q3 x, p# w$ z
swarmSetp();+ k& E/ W/ K& j% W
actionGroup = new ActionGroupImpl(aZone);
* O% S1 f7 u8 p5 E( X6 ^ schedule = new ScheduleImpl(aZone);) A4 G, g: ^5 X5 g: p
try {
* `* S& t$ D7 q2 b3 A* Z7 @, _0 p Selector agentSel = new Selector(Agent.class, "agentStep", false);" k# Q. b5 [2 w: C
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 |1 Q7 C2 |4 ^' ?+ x2 |8 i' L* T
6 l3 t, o+ C+ r O+ y/ v
actionGroup.createActionForEach$message(list, agentSel);
$ ? c% \. Q& o actionGroup.createActionTo$message(this, swarmSel);# I R& Q ~' B3 r$ T v+ M
schedule.at$createAction(0, actionGroup);/ o1 H8 }3 _* N5 r1 ^& B2 n
schedule.at$createAction(1, actionGroup);& L5 N0 d% J6 L O
schedule.at$createAction(2, actionGroup);. M9 b' n! s8 w5 s
0 r5 }# K% e& \- @* @ D! W } catch (Exception e) {4 l A, K+ }: p/ b6 }
e.printStackTrace(System.err);
% P* Y0 Y8 y) j0 Q3 r0 j //System.out.println(e);5 A' O1 @+ \' w+ g
System.exit(1);2 ^5 \( ~- |, \; t0 G. G; B% ?3 Z) [: x
}, v/ y8 p6 K7 K" P/ y# f
+ x7 Y7 @0 u; a/ m% f$ z5 T
' z0 J& l$ F- P& }/ ^ }
1 L. ]8 [# Z% d7 A& @4 o6 r% M9 L, l% c9 d. \4 N( K0 M
private void swarmSetp() {
2 @; {: E/ K' |: r list.addLast(new Agent(Id));, x* n6 a' `2 G% P
Id++;
0 p" v& N0 z6 d% t, Q: C! |; D }8 L( {1 B; O# y4 T1 L D
' G: b$ x, O8 l" ?) ]
public Activity activateIn(Swarm context) {
d, e2 v+ |1 [3 C- h super.activateIn(context); x% M1 I! u) H" g! u# n
schedule.activateIn(this);
8 Q. Y3 ~! r: O5 J return getActivity();
0 y E6 L y+ X7 \: U" U# @ } y; o! `/ w7 ^
! y/ f8 ?" {. \5 ^. b public static void main(String[] args) {
% Y9 `. u* D: W9 m' [5 m2 Z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 o6 y! U, s. _3 {) n* y Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 ?6 S: ]! E& }3 p
swarms.buildObjects();
$ q. e! k: h2 u, K0 E: @ swarms.buildActions();
2 Y9 @# k& ?7 d swarms.activateIn(null).run();
* d7 N9 d B6 f; m0 Y) q; a- V }6 z, g$ _) Y9 E: V9 K
" x, F: J8 M1 s: ?% O' E} |
|