|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + g& V8 m5 g, B8 e* N
+ n! w% F$ @! M8 }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, n! P+ M& H0 k3 x4 |& z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% o/ c6 Q6 W, ~9 L* Eswarm.SignatureNotFoundException
; w2 g8 i; t* V7 V9 T at swarm.Selector.<init>(Selector.java:76)
2 f/ Z y! L* Z! n9 ?+ F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 O9 Z; Y# v* a4 C at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 \4 R( u# u$ \1 m- V; b8 V5 G
, x) V8 }. Y( n+ h# s: |! C5 o5 U7 w/ o. s1 W$ r
import swarm.objectbase.SwarmImpl;0 p1 }. m9 U# E
import swarm.objectbase.Swarm;- f+ \0 {4 p3 V1 m. Y. o& T: {
import swarm.activity.ScheduleImpl;
& U& r' ?! ]& D, c+ @0 Himport swarm.activity.Activity;
/ Y% h& g* r4 U" X _import swarm.activity.ActionGroupImpl;
5 R* Z0 H' B3 a1 e$ H# Pimport swarm.collections.ListImpl;
8 y% N* H' p" t/ w$ o9 C/ K0 Simport swarm.defobj.Zone;
4 Z$ h4 [2 \0 K1 u2 cimport swarm.Globals;
, `- y# {; J/ m7 o% bimport swarm.Selector;
; }6 a5 o( G5 W8 Iimport swarm.activity.ActionGroup; 7 g1 f5 Y) c; T! }
class Agent {; A1 p0 s4 \! s9 i( \
char id;
# [2 y) ?6 f3 |
: E0 e) r; C( E Agent(char id) {4 x; W6 r2 g9 n4 |% G5 A
this.id = id;5 f5 u' ]- k9 h/ {
}1 J3 B1 w. w5 `6 e ]
7 A/ A: o6 I# s$ F' l: s9 J3 X public void agentStep() {
/ O/ Q4 I0 g( f& l6 ~! l System.out.println(id + ":" + Globals.env.getCurrentTime());
1 H0 C- G4 S; V3 e1 \/ J# ~ }
' ~7 F' K, ~/ T9 X" ?* K d}) j0 V- H3 ~( V, b6 M
/ D9 b$ L* v3 t( z7 B( c, l- x( `public class ActionGroupDemo extends SwarmImpl {
+ ]% W. T. N( D6 u& m ScheduleImpl schedule;
% t0 m* J) O8 y, D, d ActionGroupImpl actionGroup;% V7 j d+ D. t: Y7 K# C
ListImpl list;
% B2 ^) u& Y0 K' y8 t% q4 D; F& p9 B char Id = 'a';; W; Y% d( {& r$ C
. D/ Y- `: |( s6 P7 A5 _4 [ ActionGroupDemo(Zone aZone) {8 F, [4 Z9 p7 r
super(aZone);
" o. Y+ t6 g& C& F list = new ListImpl(aZone);) j6 [8 ]& V( C8 @( @& @
swarmSetp();7 O8 K; l z5 w2 W" a- q
actionGroup = new ActionGroupImpl(aZone);
6 v% c& U$ S: e2 e schedule = new ScheduleImpl(aZone);8 o7 g6 ^+ l: T2 K8 ~- E
try {
9 Z$ M; @: o3 @% E" z0 W Selector agentSel = new Selector(Agent.class, "agentStep", false);
# {8 z2 t4 X; q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 B+ v/ K" @% e. K/ t, u / y0 y. q! o$ p) J
actionGroup.createActionForEach$message(list, agentSel);" |) i5 \" O5 R! f8 @
actionGroup.createActionTo$message(this, swarmSel);4 E; q5 |# a8 _. {+ A
schedule.at$createAction(0, actionGroup);
8 ?, \% l- a g5 P: p1 p schedule.at$createAction(1, actionGroup);9 l7 v; k( u( D: F& v
schedule.at$createAction(2, actionGroup);: U, Z: p. i4 v- H7 I
& F8 P, N/ V' w
} catch (Exception e) {0 g. ?/ b0 k) j5 S: s. O- W
e.printStackTrace(System.err);
- _' n3 z: m7 j //System.out.println(e);( j( {+ c) ?/ G& G
System.exit(1);3 \ v/ c/ ~% c; Y ~2 M: {3 [ I
}& A1 m; c) `8 H: h6 v# i" \
8 ?8 g! ?; |/ U7 X: [
: `1 K/ a+ ^3 I | }: q: q# E" }- f7 `1 m$ }- S
2 [* `: k0 E: l- C ~* G
private void swarmSetp() {4 S& w6 J& h5 S6 x5 M, \
list.addLast(new Agent(Id));
7 L/ d& P; A Q2 j e Id++;# j) V$ _0 j, }! R4 w( R/ o& p) u! H& Q
}* Y6 } p7 I! G! K4 _8 Q( I
5 x7 M* j2 I8 _6 x# M" ^! D4 n7 A public Activity activateIn(Swarm context) {9 R, H" O. O8 L/ w
super.activateIn(context);: W. E \/ ^4 ?1 x. i G# @$ @
schedule.activateIn(this);5 Y+ e1 L7 f7 l* s
return getActivity();4 J& U* D' b& }5 u5 T/ C( g
}/ Y# P2 B9 H7 V- m) s
. ?) s- n# n6 \# q' Z# H
public static void main(String[] args) {
8 q" U& D$ f0 i" L# k$ b4 b Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 ~- C- A' p* v3 d Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' `; ?6 H2 \2 S swarms.buildObjects();& V6 w! \4 \" ~3 _; S
swarms.buildActions();
3 M! U" s2 Y. q/ i- w1 V swarms.activateIn(null).run();
. n# ?" }5 ~( b* g& E7 G }
5 g0 t) w6 r0 G: `6 R6 S; Y
( X4 y4 a6 ?' o* W6 n6 K} |
|