|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* X& F- X( e# }
# b1 f0 K% V% `; N z6 p. _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 q6 {7 b2 ~% O7 o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 i9 e% J X3 @
swarm.SignatureNotFoundException
% Y3 l" L( E5 f. k% K7 ] at swarm.Selector.<init>(Selector.java:76)
7 n! J) D( N- f at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: i8 @, @ z9 r% }( l: ]* o# y at ActionGroupDemo.main(ActionGroupDemo.java:67)
' ^ O7 U% |- s: w/ O- H1 \4 h! y- T
* r9 X! V. ?3 U; Q5 g- `; z1 P: Q# Z5 N7 ]0 j
import swarm.objectbase.SwarmImpl;
* Y* [4 R F2 J1 ]' Yimport swarm.objectbase.Swarm;
3 y% k/ d8 a3 t _* s8 Eimport swarm.activity.ScheduleImpl;8 a Z7 }% v/ Z3 V/ \3 c5 E
import swarm.activity.Activity;
- y) T1 x' V7 k9 \7 ?9 Rimport swarm.activity.ActionGroupImpl;- Y8 k, u7 l, N$ `+ W! I6 q
import swarm.collections.ListImpl;
4 v) i8 L; |1 k; r; _5 m! N" e. Jimport swarm.defobj.Zone; ! }" ^9 E {1 x) ~
import swarm.Globals;
2 t/ W3 {9 a& p/ Oimport swarm.Selector;
3 n% X5 g J, g* Mimport swarm.activity.ActionGroup;
; y$ E' `0 D# R- _class Agent {
% A5 x- H1 l- ]8 z6 ]8 d5 K- q char id;
6 Y3 I! r2 K+ O% u2 { J
3 [" E. D) N0 E; Z# G- c& L Agent(char id) {4 W4 c, c) n ? ]
this.id = id;
) p, w$ `# t( p- g# a- i; u }; s, I, ]1 S0 c# d
* \$ W0 u" N) {9 C0 r0 s) r( `( F/ X public void agentStep() {
& o |9 y+ U p6 J( ?$ `7 o( l: n1 _ System.out.println(id + ":" + Globals.env.getCurrentTime());
# o3 P, X2 S; L& j6 T0 u$ y! a }
4 W4 f$ O/ T+ w4 U$ ]+ H6 [: U}: _8 W, M# H' P4 _# U( O
- A( A) |/ t3 a2 q' a$ ?5 ~+ D9 |
public class ActionGroupDemo extends SwarmImpl {% t; f% g& ^9 t, c
ScheduleImpl schedule;, o6 E S* B0 u' b" {3 o1 {) o8 |
ActionGroupImpl actionGroup;5 x( ]2 ~3 }0 o! {
ListImpl list;! Y" J" \9 ^# z/ v' ?% F
char Id = 'a';
/ o4 f, Q7 D& m3 H
- G: ~" L! M7 l/ ?/ B2 `: C! a ActionGroupDemo(Zone aZone) {2 A/ G g, q: m/ ]' _; \3 B$ E
super(aZone);
+ _" v, Y- r- C7 N" X list = new ListImpl(aZone);0 }. K0 k. k: I. g* F. w4 n; d
swarmSetp();5 F2 P0 o7 z! n
actionGroup = new ActionGroupImpl(aZone);
3 f2 Q- N& k2 u' E0 p ~ schedule = new ScheduleImpl(aZone);
! r- ?! r" c& H1 p8 |$ ?0 z* T try {
& W7 g" U. [1 `7 r+ V, ^ Selector agentSel = new Selector(Agent.class, "agentStep", false);7 D, t5 [# u% @
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 V2 Q( }: i5 S/ G# ^+ }# @
) I$ {: s, n7 T* C6 [3 B actionGroup.createActionForEach$message(list, agentSel);( d. C+ v4 O. u" ?/ j# K; I* ^
actionGroup.createActionTo$message(this, swarmSel);) a4 r {1 { k% [7 @! I1 U
schedule.at$createAction(0, actionGroup);
4 ?7 x8 \9 ^: G# W schedule.at$createAction(1, actionGroup);9 W* v2 D9 t# O% J
schedule.at$createAction(2, actionGroup);
9 L- K4 S+ W# R* w( V& ]
6 d# U7 n. U0 E( Z& l } catch (Exception e) {0 x% m l' i# `8 L: g# z6 B6 w
e.printStackTrace(System.err);
) A* U$ W; H* N5 c$ H //System.out.println(e);
. K9 {/ ]" q1 F) F& t/ i$ i5 P4 J System.exit(1);
# G3 F) o& `1 D }
* M; J. E. d: p6 t9 W0 f7 S
; ~- D" [" k$ I4 L$ T+ f. ?8 x* p% w5 j
}8 b+ |! g7 t) |9 v/ Y+ s
/ y! b- E% a8 C. v' A# T
private void swarmSetp() {/ R( y6 f6 }0 N' v- `$ P
list.addLast(new Agent(Id));
^8 q( z" T/ n: B- ?! {2 T3 @* \ Id++;6 j9 x/ m! l9 i+ m
}% L& u. E2 b$ f* A q
B2 l/ ]4 x! @$ b0 i+ d4 v( h& c
public Activity activateIn(Swarm context) {
. y- X2 J# h6 `+ a super.activateIn(context);
5 g! y! w" T! O* w* F5 ^& t schedule.activateIn(this);5 Q: D, w+ G- _1 `0 Q8 b" r& `# I
return getActivity();/ `" h C/ H, ^) W0 i% z
}3 r! z- E' k0 w6 t. I' P1 i
: A+ g+ i0 Y8 V0 @: x public static void main(String[] args) {$ p+ \/ k7 n( g, V3 E7 r, [- H1 Q' i
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" d# u- `1 W' e9 T( q3 r* T% V Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& E3 m/ c: o+ B swarms.buildObjects();# A0 i) p$ ~5 a/ E" b
swarms.buildActions(); r# y! N5 s. C- `) `
swarms.activateIn(null).run();
# ]! B `5 p5 ^4 `2 I) n0 g! M }
6 E5 A( t2 Z) y, g, [, b1 a
2 k/ @4 k! t% P7 x: B& X} |
|