|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; B# e" g& M; |
$ J/ P$ E n* x- w# @' V8 M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" p0 P; s Z: H. A& R3 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( ~; L3 m1 g2 p+ n
swarm.SignatureNotFoundException9 m0 Y; @( W4 z* G" P( y+ q
at swarm.Selector.<init>(Selector.java:76)
$ ^3 x& G4 W5 s8 {6 ?2 R' F at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 {* ~3 E- M! c2 c# z; j7 |* K) z
at ActionGroupDemo.main(ActionGroupDemo.java:67)0 y% v* i* m, [( N
$ _, g& Q9 C( K! ~3 }9 n" H
# g4 n3 M6 S Z2 vimport swarm.objectbase.SwarmImpl;! M, b7 b. o# p+ \: a8 l/ r
import swarm.objectbase.Swarm;
( w( ~9 i4 R$ s$ Zimport swarm.activity.ScheduleImpl;% G9 X. s' C7 k+ P& N* B
import swarm.activity.Activity;3 c" c+ O# v- o3 Z o' L% h" E
import swarm.activity.ActionGroupImpl;& x4 A/ K6 K% c3 ]4 o Z' F& D6 l
import swarm.collections.ListImpl;
8 W- v6 n9 q% D7 _8 F5 T% d: v; u" A) Himport swarm.defobj.Zone; 2 I% w# ?8 Z3 ~8 @7 t
import swarm.Globals;/ n0 x9 N+ A' g& ?7 L
import swarm.Selector;
3 g$ ^. i9 @+ i# Uimport swarm.activity.ActionGroup;
9 ~7 b4 B5 N3 e! ^8 ]class Agent {
: j/ [& c6 ]1 c char id;+ k9 D1 l7 ?: x& U
" V' I( W9 `/ n( v Agent(char id) {
" s' V5 Z! w- p" K9 t4 H( @ this.id = id;( L3 W% F( k( ]
}
* f8 d( S1 T: _. E& U( `# U" l
* K8 i3 p: B7 n: r public void agentStep() {9 }. ~0 Q- B O6 L2 h: [
System.out.println(id + ":" + Globals.env.getCurrentTime());& b* R# v8 ~9 ]
}4 a# m7 E$ \. _9 h2 I- ?7 E. {8 i9 S
}9 {( p4 I0 x# h3 m6 N0 D6 |
& l" X9 Q3 H- G6 a" K) l1 {3 z
public class ActionGroupDemo extends SwarmImpl {; ~) b* @* _ W( W) l. q
ScheduleImpl schedule;
* P8 ^/ Q6 I- k1 T4 p: c ActionGroupImpl actionGroup;6 o J& Y3 Y: Y# q _* T( n1 J
ListImpl list;
5 X: Z+ _' H. Z4 @# K char Id = 'a';
; X1 u1 A6 D/ {' E$ D' Z! W9 G; Y! W3 ^8 B, L H
ActionGroupDemo(Zone aZone) {! K: l. K! ^( S. [
super(aZone);( c3 R, h" `3 B" y+ a; t
list = new ListImpl(aZone);
, m2 d* R, ]$ g. x swarmSetp();, q# g, I5 M e$ r h* [
actionGroup = new ActionGroupImpl(aZone);
9 m( z6 C4 w* j2 i4 b schedule = new ScheduleImpl(aZone);& {2 y& K( ]+ N" X
try {( C4 Z# w8 r) N3 F/ H' o2 Y
Selector agentSel = new Selector(Agent.class, "agentStep", false);; m+ K" u7 v- ^( O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 C8 x; Q1 E# K1 V7 s w4 _2 y1 P
+ j8 Y4 u/ b. n( r2 D/ x
actionGroup.createActionForEach$message(list, agentSel);0 u" b D( v# O: b. t5 Q
actionGroup.createActionTo$message(this, swarmSel);
( P& ], ]1 M" t6 z schedule.at$createAction(0, actionGroup); L0 L5 ^$ D. E/ N$ b( L l
schedule.at$createAction(1, actionGroup);% I$ w8 I& L; I$ w3 ~, q* {
schedule.at$createAction(2, actionGroup);
; I# Y1 {, Z6 C7 Y
4 O; O# h2 k, a! K- I7 [ } catch (Exception e) {( `$ L( w/ J3 H
e.printStackTrace(System.err);3 w) J# }: Z5 A, q
//System.out.println(e);6 O2 g5 Z) y5 o: w$ {' f6 O
System.exit(1);" l* f [! g, ]9 z' U$ A6 O
}
3 Z" d1 B2 K' C D. c
# i% b; D& h& G! L) `. O" J7 a5 A2 W" j# x* g) L3 j& ?
}7 B: E, {. s7 U
$ p' c3 V: h( p4 g/ t# U! `
private void swarmSetp() {
8 @3 L% Z9 Q+ H list.addLast(new Agent(Id));8 z: x' P2 I8 w2 T
Id++;3 C$ ?' \& W7 e0 c
}4 v+ L4 Z0 n& u+ v
; ~9 a) R9 u' w; F# l5 q2 I
public Activity activateIn(Swarm context) {
/ u8 |+ B, b# K( z. w; y# G! O super.activateIn(context);$ U2 y- |6 D. t; p* u
schedule.activateIn(this);3 a" N( O% Y _+ `3 _! I
return getActivity();
1 I$ i' e: r0 g }, ~* ]( Y, F* H* i% W$ B! V. G
: @, X( {, y/ L. x: F- |
public static void main(String[] args) {2 `4 Y% A2 r/ C2 F2 Q t
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" A$ m Z7 M6 ~! S6 n) x% a- P! A
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! a" m7 a$ ?$ g7 O* z
swarms.buildObjects();. |* U" ?( s' [( `8 f. b' K
swarms.buildActions();
0 c4 @$ X; N% _' H swarms.activateIn(null).run();! _; I6 @# x# X
}& [7 { a Y3 d) ~- o, T0 V
" j. L3 ^( j9 W% ^2 X7 K
} |
|