|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" O) o, v! c( P0 s, I, y1 u! @" V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 W7 p' v6 G5 ]% A* r. E' o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. A; m5 { X# pswarm.SignatureNotFoundException \* M6 c0 I" h9 V' {5 U# h
at swarm.Selector.<init>(Selector.java:76)& i: s% M! G+ u' ^2 y! L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 _) @! J9 G' s# h$ B8 ?2 ` at ActionGroupDemo.main(ActionGroupDemo.java:67)8 ] t3 @* R0 L5 R
- E5 K/ Y; ]- n1 j+ o
8 C6 K, a% f! h/ c# i/ ^! b. N2 S
import swarm.objectbase.SwarmImpl;
2 ~; H$ L' e' S* C limport swarm.objectbase.Swarm;! X7 R5 W- {; h
import swarm.activity.ScheduleImpl;# Z6 u- f( Y; {+ v( i# f& Y6 U3 h
import swarm.activity.Activity;7 @3 p; k! y( {9 t/ ~6 F$ S7 f, z
import swarm.activity.ActionGroupImpl;
, u8 }: N' x3 K+ q# n* y5 @8 ^import swarm.collections.ListImpl;
" ~0 C9 A! V# g$ W$ I, @, _import swarm.defobj.Zone;
, z) ]$ a- {1 z. `" Ximport swarm.Globals;
/ E9 G' f$ _5 P# d) l6 dimport swarm.Selector;7 p I& J& y9 t; E$ e
import swarm.activity.ActionGroup;
4 p) u; R8 K1 |6 w, z# c* E oclass Agent {! }# U8 k$ A) q# m
char id;3 v( O6 S) v. f% y1 A4 i: i3 x
, R' p9 [* x5 ?+ Q0 z6 B
Agent(char id) {
0 W+ A& l* f+ L5 F this.id = id;: J6 C$ p! B# z0 i! m3 I! H
}
$ n( B O" t4 @% R1 g) w# w
% L% t& i& W* d7 j/ c3 P public void agentStep() {
, E& n+ Z& i* r% x System.out.println(id + ":" + Globals.env.getCurrentTime());5 q; ~( j5 f' b2 V
}
* r$ e& j g. {7 y8 E: S}. T- F; x3 B0 z# a+ j1 r+ l6 ?
" P' w8 `9 U% n) s& Z1 Ypublic class ActionGroupDemo extends SwarmImpl {# s( j U* |. @1 j
ScheduleImpl schedule;
4 c+ a* _0 z1 r& p! ^' s; r+ R ActionGroupImpl actionGroup;2 I0 m. n0 }3 Z* o' j& W, n* B
ListImpl list;
) a+ X/ s. _, O9 j. ` char Id = 'a';6 w3 L. K6 L$ g2 @
0 Z! p5 \; |7 A- ^ ActionGroupDemo(Zone aZone) {
+ @) t+ e1 U! D2 H7 Y0 S& U super(aZone);
& [9 g+ s0 X2 E, F/ W8 Y list = new ListImpl(aZone);: K! H' }' D- G/ F( Z0 M( C' f& M. n
swarmSetp();
3 ?# {) u4 T6 w7 K actionGroup = new ActionGroupImpl(aZone);' e" t- D; c: \& t$ J5 I1 J. C
schedule = new ScheduleImpl(aZone);
2 c% H3 v6 z0 r& @ try {- X. o5 k- W G
Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 N* J9 z% B! v2 P Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; ^& `0 H& |$ c
1 i* h; q6 \6 `+ I G% v+ l4 | actionGroup.createActionForEach$message(list, agentSel);' t0 c- a8 y; n4 m
actionGroup.createActionTo$message(this, swarmSel);3 w( Q, V t* ^" s* i' h
schedule.at$createAction(0, actionGroup);/ \/ N) d& w2 D7 M+ E8 K
schedule.at$createAction(1, actionGroup);
& d6 z& R: R ` schedule.at$createAction(2, actionGroup);
1 z" a$ V k7 z, J! c: h2 {8 g' Z9 _. ?1 ]2 S' Z1 {5 r. y
} catch (Exception e) {
" A: {& X) M5 I e.printStackTrace(System.err);! p8 x7 [2 Z9 U/ W, n: @( `
//System.out.println(e);* F( G% I# X+ S# r" S
System.exit(1);) @+ k F3 S8 U; @
}
1 U# e/ g0 [/ Y
$ V& `6 K. ]* H0 a" z* w0 {
0 r- @& k) A. [: w1 a3 D; F8 c }$ R v; n, u/ a, Q' g: R* K3 s, Z4 S3 s3 q
( M0 Y, I" Z; c v- w: ] private void swarmSetp() {
, a# X# \) T# [) T list.addLast(new Agent(Id));
! i: N# C8 [# v3 R Id++;: Y) C6 R; W }% n' I
}; o: ?- l, H0 ^7 ~5 i: S
9 ] w$ i& S- c& ]+ Z) F
public Activity activateIn(Swarm context) {6 Q& j# x- v( O& P+ R$ Y
super.activateIn(context);- S: N, R) ~( i7 G- G9 B8 K0 X* U
schedule.activateIn(this);5 Y3 o9 x5 s# c0 ]+ h
return getActivity();; q0 h2 `4 A9 Z. {: x) \7 l$ t: P, N
}4 [* j4 V- H" ^0 L6 ^
; } n9 e2 Q% [& X1 d! _' b
public static void main(String[] args) {
* K0 Z, o: y1 r2 G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' a. X' @" J3 W6 @) d) R: y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ y, D' g1 S7 t5 o6 u swarms.buildObjects();6 v/ ?4 w, g) }8 }
swarms.buildActions();1 r' n! R( v; b, Q
swarms.activateIn(null).run();
@$ `/ j! `6 A. M3 ^2 y! X }
$ u8 K- r6 E$ Q; Q) x/ Z
" V v1 j& I3 }1 X8 L8 E. k1 P* y} |
|