|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ E- n( q. _8 N% h$ s8 }( ~) S; ]: J( x7 ~. ~. v5 ^% p, X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ x! j# V: P4 H" N* g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 \3 b$ @3 v1 T" p
swarm.SignatureNotFoundException/ X0 l; i2 ~$ G: t* E+ z/ w
at swarm.Selector.<init>(Selector.java:76)+ a- F5 k. k& V% t! _( k% H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' k& O" W1 ?: Y7 O
at ActionGroupDemo.main(ActionGroupDemo.java:67)1 S, Q2 }3 R( G' H1 A! d9 j) w9 M2 p
' [. F; L1 E; b" v" U: W0 X |
. P! i, ]2 I6 v. G; T7 o9 s
import swarm.objectbase.SwarmImpl;! ]8 ~. B. C k- a+ i0 e
import swarm.objectbase.Swarm;9 T: q4 k; N! ]! ~% U3 P- d h
import swarm.activity.ScheduleImpl;
" Z- ?+ F a' _import swarm.activity.Activity;2 m. J4 H0 L4 _# q- {" G
import swarm.activity.ActionGroupImpl;
5 o) F9 I8 l% Bimport swarm.collections.ListImpl;
6 |, |" |" C2 _8 k" Y pimport swarm.defobj.Zone; + N# \6 g5 k( w7 |7 ~ ]. U
import swarm.Globals;
/ j$ Z8 T2 A" G6 D- ~import swarm.Selector;
5 o0 ~; p: e; j% j( Dimport swarm.activity.ActionGroup; 3 K/ D: m3 l5 Z* E9 w
class Agent {
) D# i) X. D) B char id;
; `/ ^) ^ K* ]
$ U7 Q! {/ s- o/ [% i- x Agent(char id) {
2 U3 S" @6 o) W( k9 b( h7 E this.id = id;
. y2 p' ?; t- d: n3 \; Y& u }
3 J7 z! N! Z* W# ~" K t' k( \6 q
, ^" U$ u) g" ~9 d% ]# A public void agentStep() {
( O0 T- I+ @ I System.out.println(id + ":" + Globals.env.getCurrentTime());
: _+ H# s, c% s. [* f }
" k# E s. n, t. j. x$ L2 k+ T}- {9 k2 |0 b1 W; M% V
4 _2 O A+ ]) R! B/ |
public class ActionGroupDemo extends SwarmImpl {5 ~( U) B- P6 h! S
ScheduleImpl schedule;
6 r1 s3 r& |( O- i ActionGroupImpl actionGroup;
2 {/ w) E$ U. {, R4 u0 I ListImpl list;" J8 c/ g2 A( d- m( U/ F7 l
char Id = 'a';
7 N4 Q9 N8 J- V0 a. Z4 g; c* F! [) s1 @5 V
ActionGroupDemo(Zone aZone) {+ H9 {/ s( q; {/ h9 A
super(aZone);* Z) t- X' r1 M
list = new ListImpl(aZone);
- O& V+ V! H2 }8 B; ] swarmSetp();
7 \) s8 H% z2 f, z/ t actionGroup = new ActionGroupImpl(aZone);( E& [; F1 h% y, s
schedule = new ScheduleImpl(aZone);" @/ M. R2 ~' s! T
try {
" Q X( m& V, H! C N Selector agentSel = new Selector(Agent.class, "agentStep", false);
( p3 r$ H. M+ d9 Z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 }8 h) f8 }0 T1 _( e) I
9 W( C1 |' I, R$ V* m4 ]1 j actionGroup.createActionForEach$message(list, agentSel);$ O0 ~' W& n$ l4 F4 E, F; D
actionGroup.createActionTo$message(this, swarmSel);
' p5 b1 i9 X: C: `+ J" @ schedule.at$createAction(0, actionGroup);( F! Q4 A% |1 Q: l' n6 b) V* F
schedule.at$createAction(1, actionGroup);
+ e+ ^+ g& D# M; C3 \ schedule.at$createAction(2, actionGroup);
/ j/ x% ?' l+ R/ d, U0 y
7 k! h& R& f3 l } catch (Exception e) {4 ?+ l H- h3 i7 v$ d# v% {
e.printStackTrace(System.err);- _1 f* {% w+ N- ] K
//System.out.println(e);
+ T0 j. p/ z( E/ M+ q5 P+ ]' }2 K U3 m6 ? System.exit(1);2 e" c- b: P: t
}+ {3 }6 A7 W$ z1 d
8 i) ~' O4 C3 @; f; p5 |
; g+ X+ z2 V2 o }
o |6 c+ o q* u* x! v! P! w( p5 {( ]" R) d# X
private void swarmSetp() {
; {2 ]. H4 Z T' E, I( I) _ list.addLast(new Agent(Id));( C: H8 L: m: A0 l+ N9 H8 s0 o& n, A
Id++;
& n r$ P3 G1 } @ }
4 Q4 o* S' A0 j- N1 |& A+ W( P9 Z( X4 f
' i* D6 _/ y; I" L2 s/ p& } public Activity activateIn(Swarm context) {
/ F# U. ~ t: e$ e4 t0 e super.activateIn(context);
/ g- @& S: [9 B schedule.activateIn(this);
- }# g, r9 I, ?3 p$ p3 F return getActivity();/ \) v- y1 e$ U. d
}( y/ R; T7 I3 J6 f4 V1 M1 d
; |+ r/ K1 t% d0 O8 v& H. G public static void main(String[] args) {# Z/ n7 }5 }; Z: L
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" L: j8 X7 g7 p0 B Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& m( D& f8 f1 N7 W3 |6 z
swarms.buildObjects();: ]/ X) E' v. X: J
swarms.buildActions();
% ]. s: ^# n" ^7 j, Y6 i' Y* N$ r swarms.activateIn(null).run();
: t4 H3 X+ y; F }& [5 a5 ?# N, a; o" ]
& w H% X; }: C
} |
|