|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * _ f. z3 a- x' u: ?! Y
! u w. E {+ l+ V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# W; s9 Y8 Z8 r! ~/ ?) Z: r4 x. S! |
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* s; E8 {7 t9 F3 o# hswarm.SignatureNotFoundException
/ [3 n$ Y1 [+ y; g" w at swarm.Selector.<init>(Selector.java:76)9 y F$ d0 ^& G/ A1 _
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% t- |5 X" {6 P+ L0 Y! | at ActionGroupDemo.main(ActionGroupDemo.java:67)# O/ B, F% M7 J: l
# l+ A$ N0 {$ [. Q6 c6 \6 I2 Y4 N
import swarm.objectbase.SwarmImpl;. s4 {$ Z4 g! K0 D0 H
import swarm.objectbase.Swarm;% Y) f9 O$ ?9 Z( X
import swarm.activity.ScheduleImpl;$ t; d5 m& d+ G0 w Z3 P3 @
import swarm.activity.Activity;
( s( q) S* @+ @# Jimport swarm.activity.ActionGroupImpl;
* K7 [. i \! D7 n2 R: B( ?import swarm.collections.ListImpl;' I, J z- f( u$ Z9 K/ r7 ~# ]0 E
import swarm.defobj.Zone; / D! Z! ^. M2 j ]/ q5 r
import swarm.Globals;+ }0 f- N2 B7 w; m# b/ _) P9 ?1 ^
import swarm.Selector;
* U7 Q4 ^( l' M" w/ @& b$ |% zimport swarm.activity.ActionGroup; 5 f& g( S" ?5 A) v
class Agent {
. y% a8 \7 {8 U2 i3 i% i! }8 m, S char id;
2 ^( T4 F8 j7 V: w! `( A3 s, O
2 R4 K X M: l& w4 W' v Agent(char id) {
, P* W& o" q% _4 X4 d this.id = id;
2 ], {6 k ~ Y+ { G. \0 b }
3 h& _$ A0 a$ r8 I; F# Y; n8 D3 C0 b2 T: I, e& r
public void agentStep() {
% B: _5 \# Z! v6 }1 b System.out.println(id + ":" + Globals.env.getCurrentTime());2 @. q4 K8 S/ E# x. S! J
} j2 _: S# H+ t6 R) ^( |- Q
}
4 g3 x, {; Y9 ?3 ^8 P C/ A4 R+ T5 T* V2 I7 A8 ]' d7 g
public class ActionGroupDemo extends SwarmImpl {
& a7 j; l2 A8 U( `4 e; w' \ ScheduleImpl schedule;2 E3 h- X& Q% c$ |6 O3 c( b/ @
ActionGroupImpl actionGroup;
: _$ c+ T: N$ u$ T7 a$ ]4 u9 ^ ListImpl list;
. u# ~7 N7 ]3 Y; J6 N/ }% X char Id = 'a';
$ B; @; n$ E5 m8 n }8 T
, w) ~5 ~' \: U ActionGroupDemo(Zone aZone) {; W4 T4 v8 ?5 }- T1 `. v
super(aZone);
% D6 a3 o9 d: w# L \ list = new ListImpl(aZone);( q" \8 t# D, U5 `$ k
swarmSetp();
) V( |) u: R d actionGroup = new ActionGroupImpl(aZone);
! I) j# O; G/ Q$ \ schedule = new ScheduleImpl(aZone);6 x- f3 J7 x: N! `
try {* c) K, L& l- _; X
Selector agentSel = new Selector(Agent.class, "agentStep", false);# T! I, [& i; L
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) x! F1 b+ E# k5 p3 ^
& l3 j0 m1 d# |2 q8 N; b, k$ q
actionGroup.createActionForEach$message(list, agentSel);! Q) [; l. C8 f/ x
actionGroup.createActionTo$message(this, swarmSel);
+ l( s c6 w, R4 ~ schedule.at$createAction(0, actionGroup);- n7 z( a* X. v) ^. m9 l
schedule.at$createAction(1, actionGroup);% S- A% j3 I) J- f% Y; M6 s/ q
schedule.at$createAction(2, actionGroup);
& p" c4 [9 H# h8 v' E1 s1 A" A
9 l. w& ?$ }6 ]/ o# g$ G5 b } catch (Exception e) {7 x- @0 ?+ r# w
e.printStackTrace(System.err);
, b3 V, I9 \0 q% I //System.out.println(e);
/ r" l6 O# \6 H4 L; B' K System.exit(1);
" C6 S' H. ^% `7 ?" U! r( k+ u5 P }( C0 q9 v' R7 \" n/ A
& R9 J s3 I* H8 F! y- ]2 B0 O
3 t8 D/ F/ Y' E$ |$ Q1 b0 G& L# Q
}
: j3 W. l. g8 C2 ?) ~" x5 p5 [1 |
- U- V; C/ b4 [1 `. Z, @ private void swarmSetp() {# T& q) j8 H" w5 [
list.addLast(new Agent(Id));! O' R% p; ^6 S
Id++;: l" j, G; ]% f5 N! _0 K
}7 O4 p6 G, O. ]8 ]
# F2 M5 V5 p0 N. U public Activity activateIn(Swarm context) {. f1 P/ x n, e6 v j
super.activateIn(context);8 L9 g/ R4 Y! k4 {
schedule.activateIn(this);
2 Y1 |( T% _5 _ return getActivity();
- U5 @6 g2 p4 c }& l# K: }$ Y3 j' y% q5 K% ~8 V5 r
) X( T* v, v% N; Q- q. R! ?
public static void main(String[] args) {# v) ~# g* w/ d# o# _2 L6 M2 g4 R5 q5 ^
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; K8 g& w6 v3 e! V0 J' x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 z/ R& s: G. q5 R: u( I. V+ [6 ^# z
swarms.buildObjects();
8 a* ~% V! a' `! e1 X; P swarms.buildActions();8 ]& b: w# r+ I" i3 Z
swarms.activateIn(null).run();
$ L& }, I) G( K }
2 { Q' x9 b4 z, ?1 Q% D+ @, e, J! J" R$ q1 p. }
} |
|