|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 s/ Z# z' r( v2 m: F7 p
! w% A; s6 Q) |$ D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, k, _" v+ Q) p* E$ x6 E5 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 p; \" F" {) r0 |
swarm.SignatureNotFoundException4 }, A; k3 R. }% \
at swarm.Selector.<init>(Selector.java:76)0 c0 d. ^. c8 R
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# k) q4 @5 |# ]* I' R
at ActionGroupDemo.main(ActionGroupDemo.java:67)& L9 e1 @' _( ]( Z, s- G
u# R w1 @0 i% V- {# `4 A& R) ^: @. A( O. D
import swarm.objectbase.SwarmImpl;$ j, Y/ |' G/ F$ u
import swarm.objectbase.Swarm;$ O: }: o7 `- r( d
import swarm.activity.ScheduleImpl;* R. F. H4 A3 |, v+ ]" |- s
import swarm.activity.Activity;1 t7 R/ P1 k: F$ g: W' a& r
import swarm.activity.ActionGroupImpl;
# z9 A. r* I; ]# S8 L6 L6 @# aimport swarm.collections.ListImpl;9 {- Q+ o$ ]# U* e) Y( l
import swarm.defobj.Zone;
, Z+ W0 [# M4 l/ T$ G4 Jimport swarm.Globals;
l: K" [" t4 @0 U- j- g \! Gimport swarm.Selector;
( M# Y! {1 W. M! [import swarm.activity.ActionGroup;
- ?8 F, E3 a8 v2 Sclass Agent {0 ~) I! y* {4 ?8 m- o; }
char id;- m6 k9 y' @ n0 X( q& a
% {. i; [$ O4 B
Agent(char id) {
9 U4 A U8 C' b/ U% k this.id = id;% q* K+ y y ]8 K* g, g
}5 Z6 E0 W/ c* d4 F
9 t% M0 [; n& H# k' {; G public void agentStep() {% S6 H! V$ j/ c9 [, A* d
System.out.println(id + ":" + Globals.env.getCurrentTime());2 O+ Q; l+ B/ A3 J! ]! [. d0 C
}
5 u9 k7 \: W( J" U4 k& U}
0 z. l, J1 `3 W S+ p: V9 C1 l ]( ^+ D% q ~4 f9 I; C+ E
public class ActionGroupDemo extends SwarmImpl {
6 q: B5 U) _4 z I$ W+ [ ScheduleImpl schedule;
: q% {' n, f% n8 ^/ P, R" }: r+ W8 j ActionGroupImpl actionGroup;
" q1 H( j, i, y$ t ListImpl list;
5 [6 Y1 B0 ^5 C7 t5 f- B' ^ char Id = 'a';% E' [( J; [3 L6 f+ c
% ?/ S, K8 A6 n1 Q ActionGroupDemo(Zone aZone) {
U6 j: ^, V0 L( [; Q! C( x( ? super(aZone);, w; P @2 `4 n v/ g
list = new ListImpl(aZone);! F$ c: m) g) I) `8 R; ^8 k/ d
swarmSetp();
9 i- T$ H# s: \2 P; T actionGroup = new ActionGroupImpl(aZone);
3 }+ M- E7 {7 }+ Q! Y$ _ schedule = new ScheduleImpl(aZone);, x0 m- b2 h: a- F) Z3 B" ]; x. `
try {$ g. M4 J6 m* s. Z6 f
Selector agentSel = new Selector(Agent.class, "agentStep", false);3 h0 l; b7 N9 n! b: T# A. p
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 q( {+ Y/ ^& {# @- @! k
( d/ j; ~7 _. y actionGroup.createActionForEach$message(list, agentSel);
' l7 Z& {( m3 \3 y& P$ U' a2 X' w actionGroup.createActionTo$message(this, swarmSel);
: ~! l! r* O! n& b8 O4 | schedule.at$createAction(0, actionGroup);
- {4 S0 V' _- O6 D- H schedule.at$createAction(1, actionGroup);
" z# \% X0 [8 m1 ? schedule.at$createAction(2, actionGroup);0 B( b! y& K5 k- r. V" _
, T4 A( W: y5 q5 ^, H6 I: o2 K } catch (Exception e) {
3 q* P! A6 H; k2 n% o0 @ e.printStackTrace(System.err);/ S2 L* W2 D/ u- s/ E# c7 _1 l
//System.out.println(e);
9 } ]) q4 [, H& Z System.exit(1);
6 G6 {+ z0 O9 { }
% V0 l2 _0 n2 l: A7 J" w% y) n6 k8 h; r, l) a
$ k2 ?: K: T* c+ q8 P: w }7 i% A0 n6 v: N' g, l3 D
5 t t% D& h, A& t$ \5 G
private void swarmSetp() {) d# J; c; d. R* O6 W* C% d2 a
list.addLast(new Agent(Id));
& w) w4 b; n& S, i; b5 c0 @3 I9 r Id++;! T, G' ^$ U l& e" D
}
& _1 q( A) n7 {3 m1 H4 L7 s- }% v3 x5 |# k# ]# t, t1 x
public Activity activateIn(Swarm context) {
6 `' P5 y! ]! Z) E$ F3 Z super.activateIn(context);. w# l6 m S4 N1 ]- C3 p7 l% a$ W9 Y
schedule.activateIn(this);' z4 s0 P' j1 v. R- R& i4 U
return getActivity();' j5 g$ d1 h1 Y$ R0 P0 H) K2 D
}4 W3 @% D, E- O) J- l3 x
0 m" C _* Z2 s public static void main(String[] args) {
* r+ [7 R) H6 o4 T' [6 }, B* U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, _2 ^( z, t5 Q- o- k9 @% l
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone); d N- J3 y/ ]0 j$ U" q
swarms.buildObjects();
' N5 `4 [: f; D. K* s: X6 d swarms.buildActions();
4 S" l: H2 v8 [+ C swarms.activateIn(null).run();
0 A7 J- j) b& E5 t0 B" D5 ^ }& k4 L8 d5 {* ^8 r" _6 ?3 N$ z
: B2 A8 J7 R+ R9 S, v% b} |
|