|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ y4 m |7 Q1 ~1 g+ U: q/ _
4 _+ M c3 Z4 D3 v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- }0 H$ F+ Z; j, N u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 r5 p/ L" w4 t$ _5 _) N
swarm.SignatureNotFoundException6 V4 V5 J* o5 w* L! {
at swarm.Selector.<init>(Selector.java:76)4 w/ c' M! D w; c: ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* q- W* k2 h9 i& s2 N( E at ActionGroupDemo.main(ActionGroupDemo.java:67)) K, r. v+ p0 e1 f, h
7 M- S2 c9 S; Q+ R( e& \( _
( c2 X" F1 @0 Gimport swarm.objectbase.SwarmImpl;
& ]& j5 U, z: ` h& u# u$ Bimport swarm.objectbase.Swarm;8 i3 U9 c: C$ ]- k% i
import swarm.activity.ScheduleImpl;
% ^! k' N' J" g$ [: |. r: Zimport swarm.activity.Activity;/ x) l g- p; o
import swarm.activity.ActionGroupImpl;
0 c) W. l% u himport swarm.collections.ListImpl;
' h$ [$ \) I$ Q2 v; }import swarm.defobj.Zone; ; u# X5 L3 K# y6 T/ j1 r1 ]
import swarm.Globals;
2 m9 p3 s8 Z/ Z: o) x1 |# Cimport swarm.Selector;
: l `3 }9 m9 W! v# a5 kimport swarm.activity.ActionGroup; 5 Y- g+ \. ^! k7 t6 H' z/ N
class Agent {9 C7 ]! k1 J& l" L$ V
char id;
) W: t2 F( W S6 |" l! s. E. z# G
Agent(char id) {7 j, S, S5 X8 o: ^% b
this.id = id;- w3 I* F- W! L0 }
}3 ~9 @ F/ M9 ^$ A8 X: L
" l3 z/ ^/ G4 E, N public void agentStep() {. b4 J% O9 K% r4 Y" C: y
System.out.println(id + ":" + Globals.env.getCurrentTime());6 B. f$ m9 D/ I
}
( g2 A6 W( q6 s/ `6 _+ {" {}! w8 f2 j& W3 Z6 K9 g
/ _; p- F! s# u1 Z# G9 U+ `
public class ActionGroupDemo extends SwarmImpl {5 z. c8 Y7 x$ h" ^2 V
ScheduleImpl schedule;2 q* g r+ S9 {
ActionGroupImpl actionGroup;
: B$ f; o- G( s! m; C: O, ]& I ListImpl list;
+ ^# S5 E' Y6 X& \ char Id = 'a';
5 ^" q, u B$ M, h }2 S" Z. y6 k) |7 l+ D# g5 M/ {9 b& e
ActionGroupDemo(Zone aZone) {
1 f" o8 r! f7 R super(aZone);
( ^- Z8 {; s0 t/ @8 v, O2 M& } list = new ListImpl(aZone);
6 |5 u- H; n$ t/ P; A! _$ E swarmSetp();+ z1 V" `1 O$ M. y/ K( s ?! X9 d
actionGroup = new ActionGroupImpl(aZone);
i b* ^* ]" N" K1 M/ b! X schedule = new ScheduleImpl(aZone);! t' {% h; I* \3 X' z
try {2 } ?# R3 t0 |6 K
Selector agentSel = new Selector(Agent.class, "agentStep", false);5 }4 B# `% b! x
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, w; h F6 ~9 [* H* w4 w2 m
& w8 n- G2 r$ ~* Y& Z& \ actionGroup.createActionForEach$message(list, agentSel);
- @- z K8 a) Q3 x- `. P actionGroup.createActionTo$message(this, swarmSel);
* J# G$ E- k: f* d schedule.at$createAction(0, actionGroup);
9 W! Z3 u6 d: Y$ o' n8 I; _ schedule.at$createAction(1, actionGroup);
, s3 U) X$ {( t3 [/ d1 s: [5 E schedule.at$createAction(2, actionGroup);
+ x+ _, E) o( k `" V8 z: n) }8 z2 S
} catch (Exception e) {+ v6 [" V# D' j/ S5 q
e.printStackTrace(System.err);) @1 t7 t2 }5 k0 @! y( f0 {2 i) j
//System.out.println(e);( ^6 q2 f# F% B8 E0 R) Y, }5 z
System.exit(1);
5 n& \% ]# K( s1 V! a; ? }
9 J/ s7 `% u2 H
, W* d* {" V/ y I& E! ?+ N6 @- [) h! F
}9 ?$ j2 F9 Z8 a" ]; J6 l% ^
1 _1 Q+ a, M! f/ L
private void swarmSetp() {
N9 u% A* }% r9 ~6 L( K* A3 Z list.addLast(new Agent(Id));' E: y1 L, q6 a, Z# \: Z; L
Id++; E% V( ]) A8 a5 |6 b& H
}
1 i/ A+ Q- f- o6 ]7 @# a+ q; j' k5 n; z3 @6 F
public Activity activateIn(Swarm context) {
" E1 J# x' C( R' G* z super.activateIn(context);# P" [$ t/ P; I
schedule.activateIn(this);
" M# F4 @; Q: w- _# h) V5 r% g7 J return getActivity();
4 W' H9 p4 N Y }
& a( D$ A5 m9 f7 m* j, S+ t! U3 J3 M! Y& f$ D+ F
public static void main(String[] args) { u/ ?0 S( T' g5 ?$ N- O% s! X! P; |
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ y N1 o) a' `7 N3 n Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 X* x; i6 X1 F' P# h swarms.buildObjects();1 L: I2 w% w! ^1 p# y* Y7 R
swarms.buildActions();& e5 r2 f C3 A" K- k t" }$ M4 b
swarms.activateIn(null).run();
9 O0 K; ^+ b7 f' Y' [ }; R1 T! z; V' K- y) d
: c& H5 F6 I1 `- `: ~} |
|