|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ N4 o1 t3 K! Z8 x( ?! p/ M9 N2 Y5 e9 B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, y; A( e5 ]8 y! h& ]6 R- R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; F/ b2 u9 W) W- e' w! e% L$ Wswarm.SignatureNotFoundException) G1 P; T6 @: K/ f9 r9 M, `/ b& t
at swarm.Selector.<init>(Selector.java:76)4 [& X3 @, D/ }- n' l8 @( E* s
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( t9 v, }9 F6 i+ o0 M/ \2 Z' | at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 B" p. f6 {) m* O# x# ], `* l' U3 Q7 m7 j2 m# y
# E; L+ F& O; C b& e8 v( V: p
import swarm.objectbase.SwarmImpl;
5 @0 u6 E/ W6 F1 Q2 _2 c3 ^6 }import swarm.objectbase.Swarm;/ ?7 i% `( ~: v- ?! E8 Z! m( [
import swarm.activity.ScheduleImpl;6 V/ I) U% q% F" S
import swarm.activity.Activity;
- R5 @6 [7 V# t6 f4 ~import swarm.activity.ActionGroupImpl;) \) h0 w F. r4 w3 ?; _
import swarm.collections.ListImpl;
6 u6 E! W/ @0 B! fimport swarm.defobj.Zone; . ]$ |" X t0 Z2 J/ M; U
import swarm.Globals;
; Q( g T& a* C: p* [3 Cimport swarm.Selector;* a* B; Y* m% r" i
import swarm.activity.ActionGroup; - a" r: k' P# X6 P
class Agent {
, l% c9 d5 u" A& ^1 K1 d char id;
! A1 G5 Y4 w! e+ g' C/ Q/ @
/ V+ I& r7 x8 i8 e7 p \! Q Agent(char id) {$ ^* L( u6 [" Z+ y# O
this.id = id;
2 I. e: i O# S6 n }+ r' J7 i/ y# T2 Y8 F
* ?5 C4 [# a. I: z# {+ `0 r$ K# B4 d$ H public void agentStep() {
% [ B* t' h# @: \0 { System.out.println(id + ":" + Globals.env.getCurrentTime());
|5 _1 {; m/ o, Q! [& G! ]7 w4 b }$ a5 U2 f1 A% l( q" ~
}" I" W& g4 X; f0 i
" y( m3 L$ X( Q: B+ [" u! u2 F
public class ActionGroupDemo extends SwarmImpl {
3 J; F8 F# J2 s1 [1 ^, P# _ ScheduleImpl schedule;/ w% E6 N2 o4 A# C
ActionGroupImpl actionGroup;
! f) N# \; Z3 Q% d$ m& O# c ListImpl list;+ ^2 r3 E9 P0 C/ z
char Id = 'a';
7 y1 R5 b# K$ d; O% G4 x: M7 M7 @
$ e) ^1 F) P1 p2 q' U1 B; A ActionGroupDemo(Zone aZone) {
+ g5 C% n$ s+ i# ?) @8 }9 g* ~4 Y& g super(aZone);9 y* B; Z2 @/ ^/ h+ M' F
list = new ListImpl(aZone);
j) X8 |. a8 B8 C5 k; b. i swarmSetp();* @; d# r2 m% S( M3 y/ u. y
actionGroup = new ActionGroupImpl(aZone);
1 _# s4 O u4 C( L- Z" w2 U. E schedule = new ScheduleImpl(aZone);/ e: Y5 N% }8 u9 P8 }$ M
try {
& l4 t6 }7 i+ f" ^4 K0 }5 S* z Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 p6 X/ @5 r* Q Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( l v" I0 C9 ~6 [ . e4 D4 |' a0 d% g! O( r( @
actionGroup.createActionForEach$message(list, agentSel);
5 m' k4 _4 ^; t) N, ? actionGroup.createActionTo$message(this, swarmSel);" I+ E( }) b0 t* E d6 O; w+ L6 s
schedule.at$createAction(0, actionGroup);) `" I, w, r- f$ b6 O# ]9 x
schedule.at$createAction(1, actionGroup);3 j2 p6 \5 v* t( W
schedule.at$createAction(2, actionGroup);2 ~( A7 ~* x" Q9 [8 Z) R
! S; V3 |, @ ~& d } catch (Exception e) {2 M5 v: p3 [6 [3 X. I2 [6 Z% ~6 \
e.printStackTrace(System.err);8 z, h3 L, m; M' p7 r5 o7 X/ u
//System.out.println(e);8 r2 s/ p( |# \; d b0 E9 U. a
System.exit(1);
/ i- Z8 R& O3 ^8 V; a' _% n- V# | }
{( n' a7 ~* m n$ ]3 e+ E
+ { f' l+ C# w, I6 ~# }/ z* R3 P y1 G, w/ Z8 k% Y1 B7 T
}# D9 B' C& |; T5 v. {0 I' ]2 ]3 r
% a* S" D* f9 w! \ private void swarmSetp() {" q) H+ i& ^- n' b( [' J
list.addLast(new Agent(Id));
* ]' p5 B6 T: [5 q) ^ Id++;
2 ^. R' [6 V$ Q; l: ?, e5 \6 d }
/ e2 n# Q+ {2 w' L4 E; K6 S- V0 p% ]6 j% k! e1 p, c3 k
public Activity activateIn(Swarm context) {
|# u$ p# s8 t) m super.activateIn(context);3 e: G* @0 M% X, T, ]$ J
schedule.activateIn(this);
/ l6 K, x3 \" J; w1 K9 S return getActivity();
5 E6 h4 ^; U: [) l% f }4 N" ^" m' t6 k' O$ _
Y7 d8 h# C3 ]8 w7 W& y* ^
public static void main(String[] args) {
, s1 u- h; z9 w* e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( h( y1 N1 H9 Z- \$ O$ Y4 ^
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% p% H. M2 m" u2 [& {( ^3 U swarms.buildObjects();- z9 Q8 |3 c9 N9 i! w) P' Q# ^0 n5 X
swarms.buildActions();
' a C' T p+ ] swarms.activateIn(null).run();+ Y0 |. L2 G9 G# ~4 j
}
8 x; R8 v/ u0 V0 G$ ~. o* K
! p' Z% E6 D- {+ E3 w0 w} |
|