|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! U/ N7 q" W4 H5 H. X+ n$ G) C( n5 L- s6 x: u: S7 o- B/ T1 q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ d. O0 z& ]9 C8 @4 P2 k. G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ f4 J) z {6 t% kswarm.SignatureNotFoundException. x7 a. k+ J9 \( S. u! }
at swarm.Selector.<init>(Selector.java:76)
; A, m) C8 ~. ` f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 J! B# D0 [6 r( j$ Y& L, ^/ E
at ActionGroupDemo.main(ActionGroupDemo.java:67)2 e. } O* ^0 S! e/ P
8 C$ w) H5 o0 L P% I, P3 L' V/ ^6 N5 r( \
import swarm.objectbase.SwarmImpl;
% r% G2 P# _7 o4 q$ e6 k+ r5 jimport swarm.objectbase.Swarm; Z7 I: N0 D1 \- [
import swarm.activity.ScheduleImpl;3 x6 H0 z6 V/ B. Z0 \7 ^3 V
import swarm.activity.Activity;9 m# ]. i: S! Z8 h2 J3 k% i
import swarm.activity.ActionGroupImpl;
9 f7 F$ ^8 @# Bimport swarm.collections.ListImpl;
. {! i- O1 ]* Y6 e; bimport swarm.defobj.Zone;
2 F: f6 m3 m8 B- o+ s9 r5 Iimport swarm.Globals;
8 |. ?/ p! j1 d# A- c) @+ z9 `import swarm.Selector;
2 A& g) d$ |7 l1 ~; Iimport swarm.activity.ActionGroup;
* m6 A6 m7 N$ u; n, rclass Agent {
$ q+ r0 s& y2 n( G M* S: X9 I- y char id;: h% a8 g" s3 p* e9 K. u4 z T
: u1 B; V3 `! @8 j1 x4 ^) A
Agent(char id) {
0 p9 A" Z1 |0 }2 r% n0 y6 N0 e this.id = id;
9 d- G5 {7 G; t% V* F }8 E! F# D3 B& ?% q
% Z: e0 d" @ y! s# y9 l- n: d
public void agentStep() {+ q# [5 \. t3 p2 {* s9 V' e
System.out.println(id + ":" + Globals.env.getCurrentTime());- t. c, D6 J' M' I
}& H% }3 W( p- e2 A+ N
}/ Q. S3 {7 ]: g' p8 ~
. \# o; S5 f( \$ i& M; g
public class ActionGroupDemo extends SwarmImpl {
: l$ v; k! i# h! e ScheduleImpl schedule;
+ Q& |0 U6 Q4 b1 {: Q ActionGroupImpl actionGroup;
' R/ r+ q6 |$ k$ J ListImpl list;/ |( D: l+ n. v# @7 D3 Z- Y* q4 X
char Id = 'a';
+ f/ C+ c$ Y% ?8 q
- W* S7 I$ ^- \ ActionGroupDemo(Zone aZone) {3 e( O5 M' y# @( h$ ~3 ?
super(aZone);, `. l8 U1 t2 C3 Y6 m7 [( `5 V
list = new ListImpl(aZone);
( P9 E! p6 m9 o% w3 Y swarmSetp();3 y) m" p* P7 u" f. C, _3 R
actionGroup = new ActionGroupImpl(aZone);
9 ~1 R* S7 k/ K9 n schedule = new ScheduleImpl(aZone);
3 L S: `% O: ?2 B2 } try {
5 x, C( z& S) A" {5 \ Selector agentSel = new Selector(Agent.class, "agentStep", false);1 v+ g& T" s- y7 f2 a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; L3 d: O/ e0 V. d$ b
( c: i# E# Q% {& m7 ` actionGroup.createActionForEach$message(list, agentSel);
, m+ ]/ s8 n: J' y' ~ actionGroup.createActionTo$message(this, swarmSel);
4 K! ?: R6 @. R( h; E+ d$ t schedule.at$createAction(0, actionGroup);6 o. @" c5 J" P3 d! H9 k
schedule.at$createAction(1, actionGroup);
- C$ T% [3 V7 O. H( M! H schedule.at$createAction(2, actionGroup);
; p) _: I- D4 n( p: |; @) U$ X2 C1 p- N# O8 v8 \) ]" i t
} catch (Exception e) {. `- ~3 P# Y. B/ h
e.printStackTrace(System.err);+ s" u( `* u1 v
//System.out.println(e);/ q0 r% Q# b5 `' ?/ [
System.exit(1);
( P8 Z W; p) K' h- a6 H0 q }
: X8 z# H9 g- I. U+ X
# `$ S% j' F- c O. Y: J+ q$ {! f' v" |5 j; D
}% i# |4 w/ Z( j( ?$ W
1 b ~5 ~% {1 _- v private void swarmSetp() {4 N: M: L" b/ j% f5 T$ U
list.addLast(new Agent(Id));4 g" ]7 w1 k) v2 @( s& W1 [: T% Z* C7 Y" z
Id++;7 w. N, x% C+ r5 t
}- U4 B# n. ~1 v5 Z! N
' `0 P1 P" N6 {# {9 | C6 z public Activity activateIn(Swarm context) {- z( y6 z8 g3 \$ q" ^3 K0 g& B; Z
super.activateIn(context);
0 G+ ~/ Y( ] q) F1 a8 ?6 x" q schedule.activateIn(this);6 }3 W! H% d9 z% [* ^4 W
return getActivity();
8 X; Z. Z8 u9 l! N- k3 i& v* T! d }6 D' c, o+ \% \) Y) x( U2 m4 y7 x& Q
U8 K$ b; c" \+ q! V2 y( Y( w2 `
public static void main(String[] args) {
, S9 \0 f2 H( A$ M Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 w1 r) Z7 L* H) G2 K8 O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( D7 N* h0 u8 v6 O! P
swarms.buildObjects();
/ S7 ^, A. f% l swarms.buildActions();& Y; B* }8 K0 \' ?8 l$ P4 w
swarms.activateIn(null).run();
0 Q! j3 D) O, E% c! m" _; h }
9 E' L' d4 o3 v4 D& A7 r/ E* B$ p
; B% x- H9 v; S! O8 f. S} |
|