|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & j$ o% L/ z: A5 K8 T& v% a
5 |% R$ y0 T& `. `; U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. [! y& k- e1 l! {3 {# o9 L" U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" m' P5 P! y/ N* K+ Dswarm.SignatureNotFoundException# R1 k3 L' X" N* X! h
at swarm.Selector.<init>(Selector.java:76)
0 h$ M2 H1 v( X; U) E: w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, @" r% D( l% F1 Q% ~/ u2 I; q" u5 q( P* } at ActionGroupDemo.main(ActionGroupDemo.java:67)5 f6 F2 r" B9 I0 C& k5 ~
4 ]5 r- H. A* v0 ^4 Y% M
* x$ V4 W: D1 P& g
import swarm.objectbase.SwarmImpl;
0 z. s5 c0 N6 Yimport swarm.objectbase.Swarm;
0 P5 q4 d8 ~& M/ K/ l1 |# \import swarm.activity.ScheduleImpl;
0 N2 B6 C% I9 n( Dimport swarm.activity.Activity;
- f8 W" i. ^3 t1 Z1 cimport swarm.activity.ActionGroupImpl;
3 e8 g8 J% [( M2 h( ?5 iimport swarm.collections.ListImpl;
1 C" t( I4 U% d" _import swarm.defobj.Zone; 0 {4 K; R# t" m
import swarm.Globals;0 }+ e( R) r/ N2 P3 ?1 C
import swarm.Selector;3 i- F) [ C$ K' i6 H) t! @" J
import swarm.activity.ActionGroup; ! r$ e% @' o+ Q
class Agent {! a6 ?- _( _# r
char id;
9 l9 m3 F" p9 G% [# w0 L
# \4 W& N5 O; d: I Agent(char id) {
; D6 u5 h; {- k7 {7 n! ~! _ this.id = id;
. k, g9 N+ G( w% c" D6 l7 w }( f, C' r) U- [( N7 ^
4 d9 Z9 ` ~* ^
public void agentStep() {: Q4 {; j" G6 G$ G+ K5 A9 H
System.out.println(id + ":" + Globals.env.getCurrentTime());# |* S* s+ M1 M! u& N t! Q p( Z
}* @$ [% t8 y6 O
}
" _5 A8 `& C6 K* U+ v: S% q5 g3 T4 f. d1 [( c/ ~1 m! @0 n: K2 S
public class ActionGroupDemo extends SwarmImpl {2 C o' {. X8 p; g. _- q8 M
ScheduleImpl schedule;
2 \+ h; {0 G4 r3 c) y ActionGroupImpl actionGroup;
8 H7 X" I8 Q" Y* V9 C2 b ListImpl list;
# `/ b- c8 N; H8 i char Id = 'a';2 y% F9 n& L2 ~5 \
J$ p5 ]8 M! l/ t2 ?* e3 @% S
ActionGroupDemo(Zone aZone) {# X5 H0 [$ W2 s# \5 d0 Q
super(aZone);: g0 z$ f% k# b; m' o. E' d
list = new ListImpl(aZone);7 F7 z3 y3 T0 z* {) |0 K8 ~
swarmSetp();* g8 g" K! E# Z$ ]5 h! { C
actionGroup = new ActionGroupImpl(aZone);0 c+ q5 E5 k D
schedule = new ScheduleImpl(aZone);8 ?# M, Q4 P) {1 G @
try {" Q0 Y( Q5 R4 [, t/ c1 M0 S
Selector agentSel = new Selector(Agent.class, "agentStep", false);" I! i1 ]& u) S# @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& m1 e# l# u$ q5 p$ e4 ?
7 V9 D H/ T) T2 P actionGroup.createActionForEach$message(list, agentSel);9 l+ F! p1 o/ p$ T% w
actionGroup.createActionTo$message(this, swarmSel);/ E4 Y- C$ z! U5 E* [8 z2 b/ ~8 P3 k
schedule.at$createAction(0, actionGroup);
1 z; Q. j8 i! K schedule.at$createAction(1, actionGroup);
2 d/ A% L$ \) r/ h schedule.at$createAction(2, actionGroup);! o- N$ }- G5 F; o: K7 {& r6 P* Y
& \, K# Z( I8 `( y9 n: U) E/ u } catch (Exception e) {9 V( O( k# _& ~: J6 q: r. v
e.printStackTrace(System.err);
3 A5 h6 d6 h: S7 H6 m* Q) E3 S //System.out.println(e);0 o& m/ w! [8 E: I& q+ N# ^
System.exit(1);
5 T6 M7 {3 r8 D, s( j0 j* |" ` }* V' V7 V9 V* C- W7 F( }
; @4 j: A# f8 P" ], r( F8 W, U: Q
! ]& S: M, j# J7 j* \9 w) ]
}5 b# G& O0 O3 l' ^
+ I9 {8 b5 ?5 k& b/ ]; A1 p
private void swarmSetp() {0 I! u; Z; [6 G9 M. Y' _: O
list.addLast(new Agent(Id));
/ B# ^2 N& x* g( t Id++;
0 m' c3 P: d, K }* K* ]" p, r3 L6 a% b s
7 I2 M( v& v; {$ G- A3 O
public Activity activateIn(Swarm context) {
3 P; A# ~$ m* W$ ~& e super.activateIn(context);/ X$ Q* K6 M; ~: k
schedule.activateIn(this);( i, D! R2 u$ |1 m- a2 p4 `1 ]
return getActivity();
$ J/ S9 L3 e5 \1 e" D. `3 h }4 P( j* Y. d- L- U# N
* j$ Q$ b* d( s2 j" S public static void main(String[] args) {
9 S p" p; Q9 x4 `) T& p Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args); U! n5 v' F0 J, T1 ]9 G3 i* r+ r
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( `6 |2 W2 M& S, y @
swarms.buildObjects();
7 ~- n1 w% c, @$ b/ w1 q/ Y swarms.buildActions();
5 \% R6 Q/ c8 ^# S9 X swarms.activateIn(null).run();
, r( q7 f3 K2 i2 Z' Y' z }2 t! F# Q0 c2 r" D5 a
% E: G5 A1 ~# C* l% P+ h3 X! e
} |
|