|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! n' M* J$ `' n$ m
. V$ {* `6 `0 @! n2 u; \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 i4 I4 [' P) A9 C3 S以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 b+ x6 m' ~, }0 ` D8 k/ H t# Aswarm.SignatureNotFoundException8 i7 t/ x# c" _& I$ _
at swarm.Selector.<init>(Selector.java:76)
5 O2 s5 E2 h, U8 }# D5 K1 i at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 r% q' Y R( c" }: q
at ActionGroupDemo.main(ActionGroupDemo.java:67)* ^+ ~: n* N7 N$ g! K% A( t# f$ `
, L) \; I7 Z1 _7 r H9 A! i, K# n" i T
import swarm.objectbase.SwarmImpl;4 g5 q8 n- M$ X( i& K4 ^* a5 G
import swarm.objectbase.Swarm; _) d3 q9 p6 }
import swarm.activity.ScheduleImpl;
$ m# K# f+ }7 fimport swarm.activity.Activity;
4 X: h. X$ K! g. _1 U7 z3 Fimport swarm.activity.ActionGroupImpl;
' [' Y* K& W. f/ Y q5 Gimport swarm.collections.ListImpl;( _! p H* H+ n) F, F, z" j u
import swarm.defobj.Zone;
, y, R6 _7 p: Q, V( e: s Q) j( qimport swarm.Globals;$ _7 [' N c, \' T5 R' A
import swarm.Selector;
) I/ c9 f, a F) w, I2 ^4 rimport swarm.activity.ActionGroup;
6 S$ D d% ?+ Gclass Agent {
: S8 }* F7 T- X) f. T; i+ g* K1 T char id;4 W; Y6 i! L# ^' \( C# t9 i; i1 K
7 P0 ~! l1 ?4 B: f+ L- U' L8 G
Agent(char id) {
, O3 D$ P! ]# c' k9 v; ]$ A this.id = id;
2 b& a5 h& l' v0 Y, c) ^5 c }# R4 U+ x) g! s
$ e( |1 f1 M: [6 u# S6 a# w" e public void agentStep() {
; |8 B% D( d! S System.out.println(id + ":" + Globals.env.getCurrentTime());7 w9 C# m$ J1 ?
}
& n m/ u) D3 L( _}. L2 [( C7 t9 a' A3 R5 U5 o
3 }1 G) ?. H; `: q; a
public class ActionGroupDemo extends SwarmImpl {
+ ]- ]; t2 k: V6 Y1 x) S2 o ScheduleImpl schedule;
2 I' b S) Q& ^$ u) _ ActionGroupImpl actionGroup;
" Q' w2 V* G" j- h ListImpl list;) i7 l7 h: I |) [# s* g1 S( C. N
char Id = 'a';1 G' T) J3 [9 U1 J
( m% y: w9 |/ W* e7 N ActionGroupDemo(Zone aZone) {
, J/ e) G& h3 @ super(aZone);3 M. \8 `6 n5 w* a( ~
list = new ListImpl(aZone);
% w! {( w; G9 a7 M swarmSetp();
2 u0 o8 A8 Y! w+ T4 G* u p actionGroup = new ActionGroupImpl(aZone);, B, ^2 j- u9 t5 Z. ]$ y: U
schedule = new ScheduleImpl(aZone);
5 K0 B2 L3 A3 g9 L) S try {
& X, g: A, q! s; y2 S/ c Selector agentSel = new Selector(Agent.class, "agentStep", false);% e, x: b" x( ]
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& K1 p$ Q. T* A1 ^: P% N
5 r" o8 P4 s* |( k! G d( H" o, q% C actionGroup.createActionForEach$message(list, agentSel);
( S/ x- T! e ~ F2 n) t actionGroup.createActionTo$message(this, swarmSel);4 a2 X- c* }/ T: j
schedule.at$createAction(0, actionGroup);
/ a b1 H) T4 q# m9 }6 i schedule.at$createAction(1, actionGroup);
% g2 w- b) |1 \; V* j. Q& x2 h0 q schedule.at$createAction(2, actionGroup);: l S3 a4 u3 ]
$ f/ ?6 ?- _" b) v2 b( s } catch (Exception e) {1 Z8 M; l% }# j3 }7 K6 k9 J. V! t
e.printStackTrace(System.err);
8 {. _4 ?6 L* Z //System.out.println(e);7 _/ D/ ^! z h5 j
System.exit(1);
+ c# ^; F/ a- Q+ O5 u" g% w }
/ e' G9 \2 R0 ^' |/ M0 c
# Q2 j& Z U% @" `$ k' Q2 b" b" h& H R' b# {9 O6 k1 m
}% e& X9 j4 C9 i
! a/ G. O. Y+ Q4 H. `9 L: O; X
private void swarmSetp() {
% {2 P3 ?# i9 A& B, j: E list.addLast(new Agent(Id));) V3 M2 E3 L L5 L/ H) Q1 z% D
Id++;
" x! K9 |' g' w! u }9 v: I* h7 H! H# Y5 e; t
7 p9 M6 g5 K! N I/ G public Activity activateIn(Swarm context) {; y5 c5 L y3 i0 |; w
super.activateIn(context);; g; o C7 L: u0 z5 {
schedule.activateIn(this);* [: q8 M4 m @( F, q& a
return getActivity();
# i5 E6 b- a$ j! c% N: v' o+ G# Q- C }7 N. s/ w! V6 X+ c
9 D; o, g1 a( c" ^ public static void main(String[] args) {
/ g" E6 o( ]8 P. C; U$ B4 u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 w7 S0 S9 G# G8 O
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, q, W# C* J& R; T! P5 m swarms.buildObjects();
8 y2 B& `& O% S/ q7 |+ I swarms.buildActions();
+ e! z' c. L# `' T* l6 n swarms.activateIn(null).run();+ p5 r+ n7 N- v. h
}& c6 Q- W4 B* I/ O
; q6 l" x5 W8 S} |
|