|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 U8 M6 |0 q" v& m6 @9 v$ D% x
1 `' A9 N" ?* l3 g8 ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! h; U) S2 T7 j9 p3 J. {" b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* O0 i6 n2 @8 n# F* j; I- d
swarm.SignatureNotFoundException" h+ L2 O8 ^: L0 ~5 G
at swarm.Selector.<init>(Selector.java:76)- ~$ y# Y7 M7 i! r
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: J2 x/ R$ \) A' e; O at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 f. \; S" L: V; ~
- X. t. m3 I& S
# r& U6 t: A z5 m$ Z( m6 `import swarm.objectbase.SwarmImpl;) f$ Z! g% T: k: ?0 J% [2 o7 Q% w: R
import swarm.objectbase.Swarm;0 ~( ~* o n1 W: v1 Z4 \
import swarm.activity.ScheduleImpl;# J0 @" g4 C" o1 r( N$ q8 N
import swarm.activity.Activity;
3 t/ b% K8 a1 mimport swarm.activity.ActionGroupImpl;
2 ^9 C: ?/ I8 n6 F+ t$ \* U+ Oimport swarm.collections.ListImpl;0 t1 J8 Z& z: m" s/ C5 w: r4 F/ E
import swarm.defobj.Zone;
' f2 \9 o0 E+ s0 {1 A$ Eimport swarm.Globals;
! \0 \' v* K: q& _( k5 yimport swarm.Selector;
% i6 m' b5 H1 w# Simport swarm.activity.ActionGroup; I1 `! ?0 D8 Y* f: I* ?2 M, d
class Agent {- e9 f( r* a7 D# S
char id;
8 i: g7 ^' ]# I2 q2 `
8 H: w, ]* T% b5 f5 ^ Agent(char id) {4 m. s2 S" \, O7 E& h3 E' w
this.id = id;: G6 P0 I, ]% R0 \( G( P( S5 y. H8 ?/ O
}: Y* S$ Z* [$ k9 R! h
$ } V3 Z: e& ]; o7 ]) }8 h& f
public void agentStep() {0 T& A# V5 r8 A
System.out.println(id + ":" + Globals.env.getCurrentTime());
; k) x# t7 K9 w1 R2 M& w, W }
( r M8 z% V0 O$ B! r1 N}
, ^- s0 J3 [ j5 ?- h) Y, ?% o3 V. r5 `8 E
public class ActionGroupDemo extends SwarmImpl {8 j o5 o( E& ?
ScheduleImpl schedule;
% u$ ]0 q& a$ L4 ?3 Z' z- N1 N ActionGroupImpl actionGroup;1 B1 f* C8 I* Q: }8 s4 q
ListImpl list;
8 P) w+ ^4 E `6 S% k8 W; b char Id = 'a';* [% Y- s3 k) u7 ]$ K
2 g. t! O8 h* K, t6 Y0 I ActionGroupDemo(Zone aZone) {8 o- ?1 W" Z( k6 t0 o. Y7 m; D5 b
super(aZone);
1 @' s; N! o" m7 o; J. I$ X" a' \9 _ list = new ListImpl(aZone);8 s3 b) p& x! H5 T0 X5 k
swarmSetp();
( Q* W( k- H* Q actionGroup = new ActionGroupImpl(aZone);
3 Z4 O; _: ?0 m4 I schedule = new ScheduleImpl(aZone);0 @- |, F' v; }/ u* t
try {5 l$ M% H) Y6 O- L& I
Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 M% p7 M5 z$ H Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ G3 k9 I' A. ?* ^6 L
0 @2 m/ c5 p( j actionGroup.createActionForEach$message(list, agentSel);# q" ?' v s9 k2 v5 n2 j8 h( [
actionGroup.createActionTo$message(this, swarmSel);8 s, c! H' b9 o% g( ^, g2 Q# m- F
schedule.at$createAction(0, actionGroup);8 K9 B* L, @* ^% A
schedule.at$createAction(1, actionGroup);
7 V) t/ p4 N/ x0 y# h! P schedule.at$createAction(2, actionGroup);- } [1 N# r7 X4 j4 Z2 ]
7 h& Q/ }1 I' S2 _+ d9 C
} catch (Exception e) {8 Q9 s# Q h( r6 D
e.printStackTrace(System.err);
4 F: P5 v5 Y! ~$ A! M //System.out.println(e);
, R' z" }2 }/ ]4 o8 P System.exit(1);
. p4 J% \9 A# H7 f) g }$ Z Y" Q: P& H' E4 P* q" X
, C2 r6 @4 i, }
8 n( x7 t7 T5 _7 x }
3 o0 S0 a6 i4 }# I3 u( r5 |
% R+ Y/ {8 F2 p private void swarmSetp() {
; ~; R# n# K* {. `2 V* N: X, ?) A list.addLast(new Agent(Id));
7 ^ Z+ C, Y9 c8 |( n Id++;
( W4 Z# ~9 u! p# F8 z" _' [/ u }8 }4 L. v ?8 {+ S
# x/ s1 f/ t) L' t public Activity activateIn(Swarm context) {8 Q1 l' v1 e; R" R
super.activateIn(context);
* z! ~/ I: l3 q' K2 f$ N1 Y' m/ C. e schedule.activateIn(this);
. `2 h: G; I) d: O! _; E1 u/ a; [0 B4 Z5 Q return getActivity();: l2 L% o: H) S5 i! l( d/ L
}+ ~6 G: w2 q4 T t/ p( D
" O4 Y& R4 h0 e6 P3 K public static void main(String[] args) {
6 D- H/ t& O v1 f& K Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 a& t7 D0 U* m Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); }8 e! N( @* _9 g9 M: D
swarms.buildObjects();* |5 f! ^) Y' H1 b0 I8 \, y2 H
swarms.buildActions();6 D7 @2 B% M2 y
swarms.activateIn(null).run();
0 h9 I. T7 ^* d' R( j }
6 ^( c& @7 k: T g2 q" D
8 E3 j: h! V" Q) o1 q' m} |
|