|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - \0 E( i- t, X! ~, Z* O3 J0 F% d
; l: L# Q: S" ~; n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- x& I' S( j+ W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: v& \8 r; W" H& `' _- ]3 _3 g- Hswarm.SignatureNotFoundException
0 F; h( L/ X: Q, h+ P at swarm.Selector.<init>(Selector.java:76)
& N R: L0 O. |4 @0 w at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! _2 d, H3 }$ D( V1 w6 x
at ActionGroupDemo.main(ActionGroupDemo.java:67)' ] x3 |: C% a
4 C' H4 u# `4 p q, |4 m# @4 T: U! B9 A! E5 Z4 a, `! B
import swarm.objectbase.SwarmImpl;, d$ n! v: C3 u: C% J& o
import swarm.objectbase.Swarm;( I9 Q: I1 W3 I8 |3 _
import swarm.activity.ScheduleImpl;7 Z k* k+ D$ s- R0 n
import swarm.activity.Activity;& v# y% ]/ i e
import swarm.activity.ActionGroupImpl;
" L( M0 M9 M0 n8 W% m- rimport swarm.collections.ListImpl;
9 j3 A: m x& z Wimport swarm.defobj.Zone; & L8 G( h# @; O4 ?5 J' Q+ O
import swarm.Globals;4 j4 q3 V1 W4 Z& o* p
import swarm.Selector;
* a8 @' G9 I9 Ximport swarm.activity.ActionGroup; 8 r/ j# J& i1 ^; a; c' D
class Agent {3 L& ?5 Z* U' _! r6 J' s
char id;
/ J" J; l) Z2 c) ?9 u5 W
- P+ Y& E+ [+ o9 V8 Y5 J Agent(char id) {7 B$ R% e9 q0 L- u/ N
this.id = id;4 v6 ]) q8 V7 o% H: v
}" b; }7 y8 ^3 {
: r! p' Z* E, E% T& U( p public void agentStep() {# M' E) m! ]* F$ T
System.out.println(id + ":" + Globals.env.getCurrentTime());
; @+ R) S+ j, K7 M2 g% `( h }
( U7 r% f) ]! b& B3 G/ m& b}
. t: M. t7 S9 z7 m6 n4 Z# Q* m3 d3 g, U, T0 h; r
public class ActionGroupDemo extends SwarmImpl {8 i+ g- I7 e" m) Z- A6 y
ScheduleImpl schedule;0 a% a0 c5 d- n2 l" ^4 j! c
ActionGroupImpl actionGroup;
) {+ V4 @+ w% ~% Z. Z* L ListImpl list;
- n& n$ V5 m% Y. e% e) X9 L A, {5 E char Id = 'a';
6 t$ s8 Y' }5 s# t) w C- c. H5 v. u) V" W# b, ~' J
ActionGroupDemo(Zone aZone) {8 f5 k$ \; E3 `' U: E
super(aZone);
. k' d! ^- R4 s1 V4 M7 u% l$ d( Y! t list = new ListImpl(aZone);9 q4 S# F' e* p) O- {5 T" w& N
swarmSetp();
2 g3 P% G0 b8 [! S- z actionGroup = new ActionGroupImpl(aZone);* R8 |% P) J$ k- ~
schedule = new ScheduleImpl(aZone);
3 H5 n# A* A( L8 o, J3 B try {! ]/ r9 S9 E- c* n' M2 v- }
Selector agentSel = new Selector(Agent.class, "agentStep", false);! ^! @5 H7 H' ]7 x
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, A% K) Z0 m# S! z% h+ p
6 {, M7 o# G. w' ?% }) Y6 M t! `; N actionGroup.createActionForEach$message(list, agentSel);0 C$ ^) K: F1 |; a) {
actionGroup.createActionTo$message(this, swarmSel);- l, ~* D* a; _: _
schedule.at$createAction(0, actionGroup);
+ H. u) x$ e! e8 @# M, ^ schedule.at$createAction(1, actionGroup);
& Y1 |* f# E& w" B$ K. X- D7 |3 L4 g schedule.at$createAction(2, actionGroup);) K3 R6 v2 M6 n* \ a4 l0 t. z9 U
. X3 e3 B3 _: P0 E% d
} catch (Exception e) {
; C/ P4 O/ T/ j) m, P4 Q e.printStackTrace(System.err);/ d" V8 ~! V% v+ _
//System.out.println(e);* C# T# |" r; x' J8 y& [
System.exit(1);8 q) |; v: x, G/ q. K, C! C
}5 u" m) P l, D+ L
# ~* t) R' q5 E4 v0 h7 } L
2 v1 M5 G0 E! x& Q) C2 P, x
}
, P9 W6 F# a* \" @( z% b0 ^6 u( K) k! e# u) U; L- @+ c) W
private void swarmSetp() {" j; X( E$ |9 @# V+ R3 U9 V( c1 ^1 H
list.addLast(new Agent(Id));+ g6 E) o% Z4 Q8 G* i9 | }
Id++;0 Z- v7 I$ D% @$ B
}
$ l) t4 F$ X5 S9 L# {5 t6 J9 O' |0 {; {! Z+ b5 d
public Activity activateIn(Swarm context) {
8 Y% y; f2 k; D6 K2 v7 m super.activateIn(context);
; G" _% ^0 \& U3 p8 ` schedule.activateIn(this);3 g% ^& |0 j% t v; o# G, j
return getActivity();4 O( T# h' m) {8 z1 g
}( }4 Q* F" w) D) Q4 V
7 M7 R' I1 t: p public static void main(String[] args) {
+ _& [/ @ _9 S. R9 ]& J+ p) i Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- S( T0 l, `+ L E; j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 `' P/ P3 i* `0 M" D- L) @
swarms.buildObjects();
8 L9 G, q7 ~; c" {' E swarms.buildActions();2 \- c: {0 r6 h& ~' [
swarms.activateIn(null).run();# j0 |5 ?+ P* E& d9 Q& f+ A
}8 e [0 h. C; g# J' H0 N
4 p- n/ i4 }9 ]1 }% X& ^, m. K
} |
|