|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 l x4 p' V7 a: W' I' R5 G0 z( R
# f# D& _5 ]8 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 @- n! d! a2 [" g+ i* [: ~! b" |0 ~, F, ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' T& E" W& I3 N! Q C' s: j
swarm.SignatureNotFoundException& _( ^6 V0 E& p B
at swarm.Selector.<init>(Selector.java:76)" q4 T6 n! B) ]) c- d
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: x8 n. i$ k5 W4 m) I$ S. t at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 S$ h$ Z3 x$ q5 i- {% M
! t0 \" ^4 G1 N0 C' {8 U# G) T: J3 X2 |) M
import swarm.objectbase.SwarmImpl;6 t! h, O4 m' U
import swarm.objectbase.Swarm;$ X! J1 {3 A: [
import swarm.activity.ScheduleImpl;5 e6 j. F" b0 \3 Z& O
import swarm.activity.Activity;
' E4 L- ]% r1 S9 M! L$ K$ Limport swarm.activity.ActionGroupImpl;
4 G8 x3 ?) C+ S! r) t. f6 Qimport swarm.collections.ListImpl;- \; ]( r* i' [! Q. F6 Z# Y8 r1 _
import swarm.defobj.Zone; & F# E, C. O8 x. q7 A8 w
import swarm.Globals;
8 h2 o$ Q0 z! y% f, Yimport swarm.Selector;
- U! K' w+ Z3 x8 E3 t6 t3 N9 aimport swarm.activity.ActionGroup;
1 G0 _4 {, K$ _! eclass Agent {* j* q& P' S, |7 X/ A
char id;: [3 x/ \/ q( X+ P& o" v
7 ^) g5 Z L1 f0 o/ G1 K2 \- o& J Agent(char id) {
4 n% [6 P) N6 M this.id = id;
4 j1 p: T4 c6 w; _2 G2 L) v }3 I( Z+ w) u* s \3 R! G% G J( f4 j
$ {3 l7 I9 ~7 _
public void agentStep() {
3 T' Z9 T2 V# \3 x* U System.out.println(id + ":" + Globals.env.getCurrentTime());7 V4 P0 c' Z+ d" o) c! n
}1 }# n& F3 V2 L
}
' b. E6 F8 m6 E C9 f( o0 o: R$ u- _7 W! j
public class ActionGroupDemo extends SwarmImpl {: h; b- N5 S- U
ScheduleImpl schedule;
3 f/ {' P) P7 E9 x; x ActionGroupImpl actionGroup;2 D z* b7 y7 Y' d" B$ q
ListImpl list;/ ^7 [: |# h" _, ]' u9 Q
char Id = 'a';! v0 t. m6 {: c- N' x4 i; L3 [
8 a3 o v( \7 D" i ActionGroupDemo(Zone aZone) {
5 Y! ?4 Y8 w, [6 ^( T. l super(aZone);
- S2 I# Q& M8 L; i$ e. f& Z list = new ListImpl(aZone);
e A" ^6 l) ]# ^, Y! ] swarmSetp();
) q, o+ o6 K/ h' l+ R- o$ ^ actionGroup = new ActionGroupImpl(aZone);
$ S+ \4 b) A ~( V' K schedule = new ScheduleImpl(aZone);
0 p9 i$ f, p1 W2 g( r try {
" v0 Q/ ]/ H( k' ~: _1 c$ d Selector agentSel = new Selector(Agent.class, "agentStep", false);8 M3 c( h( c1 _; ?. x( z Z+ U
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) b# a8 _# ?8 a0 `5 K% ~1 y& z
: U" }: G2 \3 @3 t, l' @ actionGroup.createActionForEach$message(list, agentSel);/ e. P8 d8 m. ?! |( P% z2 P3 {
actionGroup.createActionTo$message(this, swarmSel);
$ I( |9 P4 g ? x schedule.at$createAction(0, actionGroup);& o- i5 h/ N! j' m. {! x
schedule.at$createAction(1, actionGroup);
# M- {( g3 B% K) n9 x, R2 C schedule.at$createAction(2, actionGroup);7 P0 j3 y- b B% c( g- z9 s" z
/ ^( {, t4 w+ w3 y( h } catch (Exception e) {
7 R5 w1 O) n, T e.printStackTrace(System.err);# |. p( _- A% W4 r9 x& z
//System.out.println(e);2 P" E, `: U! e% L. M
System.exit(1);
6 g7 I/ k3 w- ^, u* D% _* V }8 K# g+ p/ `% t8 Q0 ]/ |
' F$ W. d ]% E, N& k8 I2 H$ i H9 u7 M g, U9 U, M4 M
}
/ i; u5 ]; b4 H+ n" T
! Y1 R0 i) W5 D" v1 D private void swarmSetp() {" z/ h5 ?' O' y, g
list.addLast(new Agent(Id));
2 I8 t# T. {/ Y# W9 I Id++;6 s3 \0 J4 \7 i( _8 j* C3 W; z# W
}" b5 y! ~! s: S2 Z" l
$ l$ W$ ~6 P5 G7 Y9 G, s0 U
public Activity activateIn(Swarm context) {. G6 H- V+ h8 k C2 \- l
super.activateIn(context);" A& Z% e# _% W! W" @
schedule.activateIn(this);$ E: Y9 D" e+ P% L7 u
return getActivity();
. p2 Q1 e& b$ q$ b }# T+ E- x1 N6 R& ?3 J/ p) H6 i: P
5 ^8 ?( b6 `: I2 v2 t3 W" H+ D/ k, v public static void main(String[] args) {/ C8 C. D# ?5 z( e6 M) T0 z; f
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. d" T+ E; ^7 P. s8 J
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* @$ N1 r g9 S7 k' c6 g- m
swarms.buildObjects();. }7 m: d9 E0 ~3 X, L
swarms.buildActions();, k$ {& o- ~5 F
swarms.activateIn(null).run();
" r3 ^: `: e3 W+ r- t8 b }6 z6 a) K ?& `: Z! h- N
+ }0 W1 l* ?( H0 C3 _" X/ y
} |
|