|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # ?5 Q6 z0 G$ a9 T. o4 B( Y5 z
$ ~5 I0 j. t' F3 j2 K# A. e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ M' k1 }, z" B5 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; y$ P) [ h7 V
swarm.SignatureNotFoundException
9 c' c) ^" ]/ @+ ~ at swarm.Selector.<init>(Selector.java:76)7 Q( f& I6 l9 T/ I' Y) f4 O
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ |7 d8 r. c: q$ y+ T* E at ActionGroupDemo.main(ActionGroupDemo.java:67)
% l1 o, L) m' ?2 a9 }1 @+ } j+ k1 j* m# ]: `
& \2 S; s$ ~; _6 R; |import swarm.objectbase.SwarmImpl;8 u5 @" q' I6 J% R; z C1 J3 I5 ^: o& B) t
import swarm.objectbase.Swarm;
9 J3 v0 P! x8 T$ Nimport swarm.activity.ScheduleImpl;7 I8 f6 P' n* G; ]* ^2 G
import swarm.activity.Activity;
: q! A; t, q) g3 Rimport swarm.activity.ActionGroupImpl;2 U* `* X3 V; [, T; |
import swarm.collections.ListImpl;
" G8 W* H3 C' bimport swarm.defobj.Zone;
: Y" y7 u" o+ [( pimport swarm.Globals;' v, F, o3 E( z
import swarm.Selector;2 V( n' R$ q# n# [( ^
import swarm.activity.ActionGroup;
( @5 K1 a, [& G+ sclass Agent {/ j- w; d+ p3 H8 [# m
char id;. g* f& s2 j/ _" f; Y
: m, M; F: I. ]
Agent(char id) {8 A* u+ v/ G/ F3 M& h
this.id = id;
# B) m8 y3 e: X* M/ V0 T }
# o6 y1 `% o' m" r4 Z5 U$ P: e, n' g6 g, `
public void agentStep() {
) h" _* d4 j# ?6 C) \" V* e" k1 ^ System.out.println(id + ":" + Globals.env.getCurrentTime());) M, I+ o+ Y- x ]4 D$ L; u1 Z4 c
}
: r, d- R2 O3 ~}
3 o- h8 M y: p4 Q+ Y I8 h+ v4 s, }$ F6 y8 l0 [+ u) E
public class ActionGroupDemo extends SwarmImpl {
4 |0 ~& o) F; h9 X1 d; o6 k ScheduleImpl schedule;& a2 x t8 g6 e7 }- l+ u
ActionGroupImpl actionGroup;3 E4 Y( o5 [- E8 b* t
ListImpl list;
3 X' w! Q7 U4 X# z( u char Id = 'a';) O# Y( l, z( \; A" b* r4 K
8 T0 O u/ N/ v# w ActionGroupDemo(Zone aZone) {
6 m! Q5 V2 F3 Y/ j/ E4 n. p7 D super(aZone);
6 S! c0 Z# y/ [6 z% b4 W list = new ListImpl(aZone);
" ^. l& d6 w/ [* n! o7 A6 H2 ] swarmSetp();
* N4 I3 n2 {$ }! U! S/ K actionGroup = new ActionGroupImpl(aZone);
+ ]- V7 ?- |; x2 O+ H0 g schedule = new ScheduleImpl(aZone);
n/ J# V/ `0 L& `% G try {# }' F3 g( h9 m! e( f$ w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
) i8 N# x9 ]% D/ B% Y8 X4 t Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 n z( `( _7 c. }6 Q. N
) g$ O1 t- b7 S& P$ S! z6 i1 Z
actionGroup.createActionForEach$message(list, agentSel);8 t% R, H; v; x$ x! G- F' v8 K& [7 r
actionGroup.createActionTo$message(this, swarmSel);
C0 U8 C0 T& i6 g, b schedule.at$createAction(0, actionGroup);$ `- h1 O& p$ T( m% u" U
schedule.at$createAction(1, actionGroup);
0 n S( u3 o U% p% p( } schedule.at$createAction(2, actionGroup);% Y$ M4 ^# N' ?5 r
3 w4 b5 G! V: }! k } catch (Exception e) {
* [4 O9 u3 Y, w2 M5 x% _" C1 r e.printStackTrace(System.err);, k# N' K2 i6 x9 }+ p
//System.out.println(e);- B) d: m" b+ D3 _/ w
System.exit(1);" J$ f; o, ^' Q- J: s
}/ T z$ C; i# V; A. t) g: @5 {* ?
6 |% D* V% h: h
, D' a! g9 E; a- |% m: ~ }6 f" V, p! E9 c3 n1 W* M
* \# l$ `- n) R% s8 p4 @
private void swarmSetp() {4 I5 c( L4 ~1 X/ h8 q: A
list.addLast(new Agent(Id));
$ ?- H0 {. d, S9 \, ^5 D0 n Id++;
( _4 B& [! U' U5 p- V }) f3 L; G e! F( r
" X! d! V2 |" L) v: L# C
public Activity activateIn(Swarm context) {0 V/ A$ F) H3 Y' D5 }" c* y
super.activateIn(context);5 b. U; F! h: I; x' P, m: g6 p! n
schedule.activateIn(this);2 G* j0 U) y8 A; v# V: \ n( B+ ^4 w0 P
return getActivity();
$ W, u; \9 q! A: o0 P. A& d8 @ }
3 a% }* o2 j0 T' C: ]- \7 p; F* y; w* I y( e6 T$ L; W
public static void main(String[] args) {
7 n G# ?6 I- ^1 w Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 s# b( `& W! o
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- k) {+ q8 w0 U" w9 d
swarms.buildObjects();
+ }* Y3 d$ u l) { Q swarms.buildActions();
, _' \# Q+ Q2 _# Z swarms.activateIn(null).run();& P6 x: q* B% E3 D# G
}
l% X* r& U! D1 | T1 f& H
( v' q/ Y& c6 h: b$ P7 q} |
|