|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . G% @' @+ p7 V4 n. D" C3 @" Z
Q) t/ `8 H8 N5 d/ E' \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 F- T# `( B7 A4 H! O! T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) U6 `! T% s v9 u2 k5 o8 B; Eswarm.SignatureNotFoundException
$ y* S3 R2 h) K3 f# \9 |! \ at swarm.Selector.<init>(Selector.java:76)
, Z+ ^* ?* \2 W0 l at ActionGroupDemo.<init>(ActionGroupDemo.java:37), ~ Y! V, K9 I2 X; V8 y" f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
s7 d; ~- K; T9 w; Y
( M% F/ ~+ b. {& S- g) S
- x2 b8 B* x* Z7 o( Iimport swarm.objectbase.SwarmImpl;
1 Z! H# h1 g- f" D e3 c9 l) Zimport swarm.objectbase.Swarm;6 p. J, T3 \. s2 h+ L$ z" {, ?. p1 x
import swarm.activity.ScheduleImpl;% A- C. J0 K- E7 H) X7 a
import swarm.activity.Activity;
+ o% P/ I0 @# A6 x, e6 rimport swarm.activity.ActionGroupImpl;, B: j: |( H/ f1 s' ]
import swarm.collections.ListImpl;9 J8 J' |9 h/ v! F. F2 I8 Q* S( ~
import swarm.defobj.Zone;
" A9 k4 \3 r2 Z8 [9 e* X, Aimport swarm.Globals;1 n! U" y3 f( N. N
import swarm.Selector;
8 q$ [4 H" E/ I5 kimport swarm.activity.ActionGroup; 6 U5 r6 g4 D5 J1 @0 J; q7 x. y
class Agent {
% Z. {$ Q# A: B* z+ N Q; F/ q char id;
' f/ ^) X0 }# r7 Q! d9 ?; q" X) [7 t3 a$ e
Agent(char id) {
* E2 I! ^; P4 Z+ y this.id = id;
9 a$ G j& V4 m: l" N3 R }; p" w" v# ^# Z# `6 A) k* n$ M0 ^
1 a, @: V% [1 r, n, R public void agentStep() {# e1 ]4 O; K$ ~5 y
System.out.println(id + ":" + Globals.env.getCurrentTime());4 W3 X& w, t' d" [9 V
}. W# k* Y4 H% ]* [
}
( T- ?/ P$ H5 |2 L/ O% z$ \' _; Q+ ~* n8 V8 i5 H" A
public class ActionGroupDemo extends SwarmImpl {# \* [) ^$ y# Y
ScheduleImpl schedule;
9 Y( B2 X2 F; J$ k ActionGroupImpl actionGroup;
( O% y8 i- ~) o8 Q- n9 z/ w ListImpl list;+ B4 k2 Y' R( ~
char Id = 'a';9 j. f# Q- m$ [1 {' @) V8 H
. I* }8 U- _/ v8 }. D8 u6 k
ActionGroupDemo(Zone aZone) {
4 P7 ^9 H) ]: ?! b) @8 J& q super(aZone);
# R. m4 x' B1 `1 O4 Q list = new ListImpl(aZone);( `! E( p; p0 a6 F* C b
swarmSetp();& ?1 c! X# v6 E0 b3 W) Q5 l* J
actionGroup = new ActionGroupImpl(aZone);
7 K3 w$ t: A4 m* b7 K% ^0 U" V/ J schedule = new ScheduleImpl(aZone);* g" S0 J. ~; h6 n) S
try {! d$ n" M% y ^! |0 `9 l6 o W
Selector agentSel = new Selector(Agent.class, "agentStep", false);, F4 q4 S4 r7 p: ]6 V2 v
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* D k: ~ t' U+ P% f9 C
( W" w' O# [, @4 G) J5 M actionGroup.createActionForEach$message(list, agentSel);
( r" T# Z' w5 I actionGroup.createActionTo$message(this, swarmSel);6 x$ X% r1 |$ O# W
schedule.at$createAction(0, actionGroup);
1 X& }7 Z# ^! m# }, K' d! }& l schedule.at$createAction(1, actionGroup);, P; e j) \: b. A
schedule.at$createAction(2, actionGroup);
- q6 }+ t4 j* c3 C5 X
4 n# x% w Y; L- l M- ]3 W } catch (Exception e) {' ^" r& v: w9 {: y9 N! w6 Y: T
e.printStackTrace(System.err);
/ {8 S7 u' N' k% P //System.out.println(e);
+ A j, F: d5 k9 @7 z System.exit(1);& A8 t! H, P. c- L) c" z' G1 k- d
}9 H/ V5 E9 X! n, \
/ G8 t# @& j" r$ _# }: K
7 T2 u3 W4 W" L1 [& F }( k* M% N0 |1 X/ ~6 ]
) g1 I( q) Y( C# J
private void swarmSetp() {7 b5 }: E7 ^ L8 q- T2 ?
list.addLast(new Agent(Id));
4 x2 [) J, i* P+ z) C Id++;
( o5 V7 i" i1 d, P2 r! \( X9 W }
+ h y+ x3 Z) L/ J; I
1 w1 i: |( @# E public Activity activateIn(Swarm context) {
' K2 [/ G( U- k- L super.activateIn(context);( ]. I: r- r: l' g/ N
schedule.activateIn(this);
. Q" s' N; E9 Q$ l5 H return getActivity();
2 M# o: m/ @( a* i+ j" f }2 i" M$ O) s/ [+ C
3 J1 x9 P5 _9 ?) ~- ~( Q public static void main(String[] args) {
1 H! U* p$ t/ V2 ^& f Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' z" k1 e8 x" n2 x$ j1 q2 X+ F& R Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 p$ \8 l% {) f7 v W
swarms.buildObjects();
' R2 K- q7 `1 G; [! V swarms.buildActions();
) Q( `) r- ?8 D9 _6 {- L swarms.activateIn(null).run();2 K' J4 i4 Y) ~
}' |& W$ M# ^* y1 u: h
1 ?( ~4 f' V; q; B. [1 r9 K} |
|