|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ P8 F- j6 \. L1 `& g8 v
/ c' P1 E+ k( O3 U/ }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 r: v7 w" M% t. C6 F( A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' v, g) O3 u/ ~3 H x
swarm.SignatureNotFoundException1 x3 y% |8 `- K% z5 S( z
at swarm.Selector.<init>(Selector.java:76); L: X; {) ~' Z* G- A/ k7 t# N0 Y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- S2 y* j( `0 i6 P# V$ q) W3 H at ActionGroupDemo.main(ActionGroupDemo.java:67)
. N" V7 T% n* p: z L
$ i" |' F' C% F" q. Y8 U4 `' A2 c' h! r
import swarm.objectbase.SwarmImpl;
% k, y( _* ^) g: [import swarm.objectbase.Swarm;
* ]- x7 Y1 Q5 r- C5 J8 E6 w6 ~import swarm.activity.ScheduleImpl;
6 W$ H S0 e1 D# ]0 ^0 g( o5 vimport swarm.activity.Activity;( [( V0 }$ ~+ j' K3 T2 s
import swarm.activity.ActionGroupImpl;4 m! @9 y7 O Z+ b! T3 \
import swarm.collections.ListImpl;
{" E* G A' U s! Rimport swarm.defobj.Zone;
3 [: S" P+ x- n8 [* g% ximport swarm.Globals;5 i* n% d; p/ |1 W$ J* [# g3 ^* p9 t" n
import swarm.Selector;
; v3 p2 Q7 v. r* zimport swarm.activity.ActionGroup; % ~; t3 q, I, N: M, M' Y/ V
class Agent {
5 c$ o/ i! e4 Y8 K( C$ H char id;
6 }% b6 W" `8 o( E! n( _! w, _0 y& F: Q6 I9 v' s+ L- k3 C
Agent(char id) {
( G8 b( ~( O: Q* R/ W this.id = id; T; C7 L$ V+ V6 a; Z5 m
}
! e+ o1 p; g. |6 ]7 K0 g% P8 A, n5 M5 k9 d5 U/ ~8 K
public void agentStep() {
, T% }" h8 E9 y" _! n, J, J+ D) O, \ System.out.println(id + ":" + Globals.env.getCurrentTime());# W( {& |3 r8 ?* i) {3 e. [ k
}5 \- g2 E: u& _8 S" C) ]$ ^
}- o; \+ \. z4 S( Q5 `
2 v# ]& y5 f8 L& W3 B! z9 {public class ActionGroupDemo extends SwarmImpl {" b+ C8 X5 p8 [
ScheduleImpl schedule;, \# q7 |4 F" a- t
ActionGroupImpl actionGroup;
3 `; i5 [. Z/ x* d ListImpl list;* `$ v3 B+ @: b& |- U4 d4 {
char Id = 'a';& j2 t4 |" F! f* p4 k3 W
1 O( {( w: _2 V {. j$ Z; P# S
ActionGroupDemo(Zone aZone) {
* d, m# D# D9 X4 d& D super(aZone);
* d) ^/ d8 T4 j: A list = new ListImpl(aZone);/ _' P0 [7 j; U! `( u. Y; Z, n
swarmSetp();& k4 q, X4 f) z* K) r8 n
actionGroup = new ActionGroupImpl(aZone);0 h$ c4 v, U* S. I
schedule = new ScheduleImpl(aZone);
( ^' t) h. f8 U/ }$ G try {4 V7 ~# U6 s2 U
Selector agentSel = new Selector(Agent.class, "agentStep", false);* D6 l8 G- K5 Z; N3 v* K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: [( L- \5 n/ o M1 i% w " J6 h% F* U" h7 _& w1 \
actionGroup.createActionForEach$message(list, agentSel);
+ X( ]9 U( f0 R actionGroup.createActionTo$message(this, swarmSel);* Z$ O5 u, E, H. c: Y9 J
schedule.at$createAction(0, actionGroup);' y% \6 G- D' {. J
schedule.at$createAction(1, actionGroup);
; m! w+ G/ ^2 ]: s schedule.at$createAction(2, actionGroup);+ ?% R7 T! N7 v# T+ L: C6 h/ ^7 W
( B6 q. t; ]4 }# T5 g& ]6 L1 Z# M } catch (Exception e) {
8 o. o$ Q+ U" P/ } L3 s. i e.printStackTrace(System.err);
7 Q6 p9 `* }7 l ^( t& D) r //System.out.println(e);( G" {5 u' `2 Y& e. j: x
System.exit(1);0 g5 e, W9 q$ k0 O- b# _* l/ G
}
+ m! L! c% f% e) q* }8 q
5 K0 V. Z+ w: K( W0 z$ `- s
& _: T" q) u0 A2 G& b& m% {' } }
5 a4 v* v7 c% C$ H) h( Y/ P; L. D- t/ V& i, x' |0 J% G
private void swarmSetp() {
# n3 ~- J. P; O1 O list.addLast(new Agent(Id));
2 [, S+ |# g0 M7 u7 \2 [% b( p Id++;7 x* l$ p% K) L: }! H& v# x5 D
}
- Y5 Q; H! u( x0 b" d- p0 p w( R2 S& o* f. A3 x3 W- u
public Activity activateIn(Swarm context) {
% k( I( w3 C# f$ m( K1 T/ e super.activateIn(context);
3 V& v0 U1 Y. O. ~- M schedule.activateIn(this);! O, l+ m& \1 D
return getActivity();( W" @; m9 \' A" W! y) ~5 d8 X
} @: k' ^1 K6 I# m0 M
% f2 [6 F( s9 n3 \ public static void main(String[] args) {% [! Y) Q/ W+ g
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 Q9 e% \6 y5 Q4 j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& `5 R N, E3 [) q9 M swarms.buildObjects();6 G, X( V; c' Q: M5 k2 l A
swarms.buildActions();9 M& P- L" {) g- f% L) o
swarms.activateIn(null).run();% q- k8 e0 S4 z
}
V0 f8 J+ k/ S$ D" S" _
: Y& X. |. _* U/ }/ F* P( I( v. F} |
|