|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - V& @2 j4 Z+ I c' k" b( u# T2 M
7 I0 j. G$ T2 O) P# x" f! u本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) [& m9 t6 O: U4 y P4 I! ^6 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 V5 C; a* C5 v2 ~swarm.SignatureNotFoundException
$ S% v& }2 ^7 y1 Q at swarm.Selector.<init>(Selector.java:76). R" l4 @! F; `. f d& |# B" [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% F# D6 U: @+ U0 P
at ActionGroupDemo.main(ActionGroupDemo.java:67)1 @! {- b- J' q6 G
3 I) s7 Y. J H8 T. o- \$ F0 U, }4 ^8 G% e6 M, N- P3 P
import swarm.objectbase.SwarmImpl;# f2 Q3 |, d/ \
import swarm.objectbase.Swarm;
; c# ]% i- T6 o; b+ D2 k v: l6 [import swarm.activity.ScheduleImpl;
; u! ]7 [9 c' ?2 iimport swarm.activity.Activity;9 R7 `9 @& P" c$ Z6 }; y
import swarm.activity.ActionGroupImpl;
) k A2 u" @+ |) H1 x" l+ V# |import swarm.collections.ListImpl;( j1 \: p: ^/ a- B0 c
import swarm.defobj.Zone; # p3 |# Q* _' i. n4 v
import swarm.Globals;
5 o1 q! {6 W2 k4 _4 vimport swarm.Selector;4 \% f7 u- m; _/ ?
import swarm.activity.ActionGroup; / R4 V0 ~& W+ d. \7 d
class Agent {6 n' @4 f0 M& o: p* G: j, {6 w
char id;- s1 _, s- h7 e- W9 J
- \6 L" r9 p3 C1 N' g5 Y" p* K* P
Agent(char id) {
4 i& ~- [7 [8 `7 n2 A this.id = id;
2 \* j: J% r2 S. q, A7 x1 w }
- \' C& Q3 ]7 h
6 S; I) j% \* C$ ~& W public void agentStep() {0 {$ I# b; D, A
System.out.println(id + ":" + Globals.env.getCurrentTime());4 D. B H0 L; C" m4 u4 A8 L
}
6 j5 U9 d" ^1 m* f% t; v- m3 \}
+ h3 R( b9 _ g' j( E; B" j* J. H6 }& x
public class ActionGroupDemo extends SwarmImpl {
# J+ C: j9 h; L, c' G1 r0 Z9 H ScheduleImpl schedule;
- I$ j7 f4 S$ h ActionGroupImpl actionGroup;
# A4 r# Z& I9 N ListImpl list;; f" y; S) I7 }9 I
char Id = 'a';
+ l- \4 N0 Y3 J5 c+ Q" } ?2 ~- | `% [
ActionGroupDemo(Zone aZone) {
. x# N5 e4 c. r" `& ^ super(aZone);
) R9 D2 ^0 c" D0 `, W* [; [3 t4 t* `; ` list = new ListImpl(aZone);
, {0 |4 @5 R7 Q |- D" \ swarmSetp();
. K8 U8 N" E* a7 J actionGroup = new ActionGroupImpl(aZone);
) L+ V3 ` I/ [ C& C' V! w schedule = new ScheduleImpl(aZone);
! |6 P' T; Y5 m4 K6 Z1 ] try {. I5 s7 e: o7 B6 y% j# P
Selector agentSel = new Selector(Agent.class, "agentStep", false); W5 p+ e$ m$ K* {1 e- i& T$ a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( o X) }" f2 d5 D0 b$ \) V* ? , w" O( p5 \- [2 |/ r" W
actionGroup.createActionForEach$message(list, agentSel);& U! ~8 Q2 m* s5 m b1 ^
actionGroup.createActionTo$message(this, swarmSel);6 S+ M0 j/ p% _& ]$ u" T* l
schedule.at$createAction(0, actionGroup);
( e1 H% h) c- G& Y } V schedule.at$createAction(1, actionGroup);0 w' M9 G* I, O) m
schedule.at$createAction(2, actionGroup);
+ r( A) H5 n7 Z% B. ~( H$ H6 |8 n' m& c! i
} catch (Exception e) {
; G) {2 s6 e i3 u* z6 O e.printStackTrace(System.err);8 u) o% H: ?3 x* z& x0 X
//System.out.println(e);
: x' P/ P( N6 q1 t. }) O& T System.exit(1);$ [$ Q! Y/ t/ {- M0 h/ W' V
}& H; J, w8 M2 S5 D
' O( u" g; k5 C R+ d7 K7 ?- X
1 c h# U2 l H& x: a0 Q4 J, B, R
}& p8 A3 ]8 H5 k
- q. o7 T5 M" l/ [7 P private void swarmSetp() {, |* H3 f: W7 r
list.addLast(new Agent(Id));
I7 y) n! Y' F" |) a- z Id++;0 P5 U! v( r3 e6 G& a' T1 @
}: M' u& [/ m' D% i4 ~
, z H* j3 J6 T' X% Q# T. |+ r
public Activity activateIn(Swarm context) {% d% D" E# `) D
super.activateIn(context);9 I' Y0 f4 L8 E# i: S
schedule.activateIn(this);
0 ` J! x0 {8 q6 M" Z return getActivity();
+ ]4 l! f8 i+ D: c# n/ w6 P) W( O }1 ^* A& V/ S. h1 v
4 A; K/ k; s5 i% C# n L public static void main(String[] args) {
0 n+ ?6 [4 U3 h8 @1 \1 W# G Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. `* @' T9 k4 [2 e$ [
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: `% w4 ?- m! ^ i! b" s
swarms.buildObjects();
6 J5 W5 m* L `: _; G, R+ ` swarms.buildActions();* E5 t2 c+ R$ @6 t) Q
swarms.activateIn(null).run();
) V8 Y; s9 f6 l3 |; L }" Y6 `# T) P& ^& f$ l' J3 x$ s1 l
, V5 n* v- F8 L" b} |
|