|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! X* r ^2 ` I2 f! p: V* k+ r/ T- b9 W2 y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 h$ q( S) w+ E" B2 O4 z' C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( v$ b" T* T. P, Pswarm.SignatureNotFoundException( n8 k: O4 B" q2 V7 `) @% J
at swarm.Selector.<init>(Selector.java:76)
. M- T& _6 x* E: ^0 G at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 ?* j+ e, j# a4 T5 {4 z at ActionGroupDemo.main(ActionGroupDemo.java:67)
. v; d1 x. f! o% C" Y6 F8 v
' v- P8 d7 G; p* c7 y: k6 O+ r8 k
import swarm.objectbase.SwarmImpl;
+ z5 R, g6 [* y+ L. oimport swarm.objectbase.Swarm;: `/ ?1 O0 G1 [! w( L
import swarm.activity.ScheduleImpl;
7 q, B @1 I+ nimport swarm.activity.Activity;5 u" X/ X9 A, t( _
import swarm.activity.ActionGroupImpl;$ x+ M: I$ P% x1 {+ C3 Y
import swarm.collections.ListImpl;
* {! L& z, Y) z% {6 E5 vimport swarm.defobj.Zone; ( m* i8 X" o8 ^' X% _, o2 |
import swarm.Globals;
* o& W9 t8 E! l3 _' Simport swarm.Selector;$ X" B2 D3 P: w2 a+ g
import swarm.activity.ActionGroup; " y0 N' n% T) y' c; t+ r
class Agent {3 m: s2 c5 v" Y: z8 u
char id;
9 [+ R/ _) \2 Q5 [7 @: d7 P/ K7 `2 h# M5 E; h R
Agent(char id) {, O8 w0 O2 S+ x) u
this.id = id;
( }! x/ ^9 I! k8 }9 K8 E }: [: ^8 H7 Q7 f: k% ^3 L
' h) g- t2 O* m; h public void agentStep() {( P" T! u! f5 u" a5 J) l2 c
System.out.println(id + ":" + Globals.env.getCurrentTime());
3 I: }& q' I! ^# _* k }
- N2 W3 d. H) D; d}! L" _2 A2 K& q: p, e* ~7 m
0 Q6 ^3 D' i, S7 Z
public class ActionGroupDemo extends SwarmImpl {
) h+ X+ P' w @9 Q ScheduleImpl schedule;
2 i9 S% d8 X! I! B1 u3 d2 H8 z' q6 m ActionGroupImpl actionGroup;
- u7 [4 I! p! b+ e ListImpl list;" H! a% V2 k$ K8 |1 q$ L! Y* H
char Id = 'a';- \* y* Q$ ^3 i d" B3 e
3 } c( H: v6 H1 K+ J ActionGroupDemo(Zone aZone) {
+ o8 O& A1 X% z" ? super(aZone);! H& [$ B4 \: G
list = new ListImpl(aZone);
) Q5 @% s) n# a! E' U swarmSetp();5 m% k. g5 I" X6 h6 U7 k
actionGroup = new ActionGroupImpl(aZone);
/ R* p2 i$ P0 G: ]) a5 I schedule = new ScheduleImpl(aZone);
1 S* ~, U( C. L$ E2 y1 Q g/ L* V/ p try {
# \' w% w9 T/ K/ k4 U( P Selector agentSel = new Selector(Agent.class, "agentStep", false);$ A7 l l$ N/ x+ w; j( v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- H( h g5 d: _6 \9 V
: Q: Y9 v; t4 [* }. ^ actionGroup.createActionForEach$message(list, agentSel);) q6 C: j$ S# C1 o+ O
actionGroup.createActionTo$message(this, swarmSel);* H! [7 D6 S- U" }2 y2 p
schedule.at$createAction(0, actionGroup);
8 A' l- v& z" o1 Q4 S schedule.at$createAction(1, actionGroup);5 u H0 ~, m6 r9 b0 j0 Z1 h
schedule.at$createAction(2, actionGroup);1 B9 t; |4 K! Z; |" }# l* v
, J- J% `, w y0 \, G
} catch (Exception e) {0 a C* Y9 Z" T! E
e.printStackTrace(System.err);9 k2 S" U" W, k& q6 R
//System.out.println(e);
2 k7 \3 @8 Q6 F, ~9 V/ Q System.exit(1);
8 r4 V( ^; v5 H7 I( F L& v: E }
- r& S8 V6 ?+ F! y5 N4 L0 ^" E6 A/ q$ p5 d
" ~& |9 D4 _7 g8 X4 u
}
( d0 {3 [* l6 R% F F) y4 c, k: t
private void swarmSetp() {
2 ]/ {+ b+ A9 @$ ?( z) C* `* O0 ^ list.addLast(new Agent(Id));1 o2 ~7 O) o+ G1 T9 W1 s
Id++;8 u3 a0 F3 P% w$ a8 [8 h
}
+ x3 h. g( Z0 r6 R/ v
% r# L9 @1 ^7 D public Activity activateIn(Swarm context) {
! u- N1 g1 }8 D k super.activateIn(context);
# C1 |' X" f1 O- c schedule.activateIn(this);
/ r1 u" h; n9 W, ` return getActivity();( } G) n, {8 W" v+ b) @
}
7 s6 ?. B+ z4 j9 `4 Q% l% U% u" p* d% Y; L( @4 ^- N; I7 c+ b
public static void main(String[] args) {
) Q2 [1 N8 m9 b! W' R Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. X7 o2 V, v" j* n Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 R2 \* L, s0 o& T* k7 V, k! Q swarms.buildObjects();7 }" T+ j$ m3 I' M4 L$ {
swarms.buildActions();. D7 W+ B1 ~% ~9 S
swarms.activateIn(null).run();" m# Y4 }/ n$ i! _% u) M
}
1 @. Q0 d9 M P# _
. }3 G4 ]# u' H} |
|