|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! X1 G1 T- p+ y0 \( v
8 f; q% v W( k0 q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 `2 c2 B8 Q8 I, M, d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ V8 I% n" w+ Z# u, Q. ~6 ]swarm.SignatureNotFoundException* [' X c# r- D% R6 e# h5 A
at swarm.Selector.<init>(Selector.java:76)$ P, P, w) Q# L
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) t( ~0 d b8 i5 V- u4 Q: v, m8 v
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 Z5 J( y/ O" g" a8 Y% e) M0 t* r. U6 N0 ~" y- s
( Y, r9 c# o6 B4 m6 w. N7 b* g1 D
import swarm.objectbase.SwarmImpl;
' D- p4 n/ B! U3 {" F% Jimport swarm.objectbase.Swarm;7 E. u3 ?* i" n8 L. E
import swarm.activity.ScheduleImpl;+ R+ A ^4 A/ C& e. K7 V- A1 y. g4 f# j
import swarm.activity.Activity;; D. g" @0 O" t( }9 f7 v4 d
import swarm.activity.ActionGroupImpl;
6 J, a% }) e. nimport swarm.collections.ListImpl;3 x4 Z: g0 I- _" A
import swarm.defobj.Zone;
3 E8 }3 ]! x. z% {8 R7 |% ~9 O$ Limport swarm.Globals;' _. H2 ^, U/ p& y5 E+ g4 ]! ]
import swarm.Selector;. t; I8 q: p1 u
import swarm.activity.ActionGroup;
& k+ Z0 l# d3 B3 O/ Q( w2 ? Sclass Agent {
' [- G, O6 ?! g$ P char id;
v. h& v. a5 g$ K2 A' v3 H' f1 [7 M( ^- ?& V: r' i) {
Agent(char id) {
- Z. j4 V. w* J( M* S& v( o$ u2 D1 m7 ~, x this.id = id;. G3 |, u" o+ w& l, ]: Y
}
- E l7 W% K6 P6 s7 ?3 X! M
" O/ f9 [9 u+ W public void agentStep() {+ N% m) _# T& A. N
System.out.println(id + ":" + Globals.env.getCurrentTime());
0 Z- a1 i/ }: a- i8 [0 r }: l" \/ z5 m3 o; }6 O# B
}7 W$ q3 r; a: M2 O( c" G
: w" x) D4 ^* M3 d) ?
public class ActionGroupDemo extends SwarmImpl {
& W$ @, n& T+ n: J& @ ScheduleImpl schedule;
4 N- e0 F8 G! V6 p/ |% v' t ActionGroupImpl actionGroup;
$ @9 v( R J) C2 f ListImpl list;- Q; W8 `/ @7 e9 L% N; Y7 |; h
char Id = 'a';+ l/ t$ D& s4 N* e% Q6 k8 b
( A' L6 f6 F% F& p/ e: b; Z ActionGroupDemo(Zone aZone) {6 \5 U1 H- }+ Q- p6 o
super(aZone);% l4 {) Q# g, ~! b1 s0 }
list = new ListImpl(aZone);+ N1 ?* W0 K- H! S9 Q0 Q
swarmSetp();
9 A6 E% H6 B* M2 Z actionGroup = new ActionGroupImpl(aZone);6 w$ t, @2 l+ v
schedule = new ScheduleImpl(aZone);3 p" k6 d0 c( Q+ g, O
try {
8 M' W# \: j a' t; o A) |1 \ Selector agentSel = new Selector(Agent.class, "agentStep", false);
% D4 {0 V5 O0 Y: `* e0 ? Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: a/ E5 ]+ J7 k7 d9 I$ I
$ @* u+ k5 y- I& e' V. h1 v: l
actionGroup.createActionForEach$message(list, agentSel);- u- S9 ]8 U+ k8 {0 k
actionGroup.createActionTo$message(this, swarmSel);1 o2 u* M) f; p2 s L
schedule.at$createAction(0, actionGroup);
( n/ v" ~+ p2 o+ ~/ i schedule.at$createAction(1, actionGroup);9 Z" R) R' x# d8 z) r! S6 h
schedule.at$createAction(2, actionGroup);
" |1 T! g! y( j6 [) c" o! H D2 P; l. J" \8 ~4 x: A( i
} catch (Exception e) {
4 Z# ` {# u' {8 f$ _) Q e.printStackTrace(System.err);
4 \; j1 J$ `+ B% j. V //System.out.println(e); I! G, T3 a3 v) K
System.exit(1);9 D) E3 T# U; y
}0 y, E( P2 Q8 w+ w0 X+ r
$ l& R: M$ z/ W P0 e1 `; ~! I% ]" I u
}
/ C! K% F9 g( x$ R. U6 O! ~7 R
+ z& }; c3 ]8 N+ o private void swarmSetp() {
0 |, O8 F6 I5 x list.addLast(new Agent(Id));+ d9 L' T; k; N z( x. z* O
Id++;! u- j9 H* o; i2 m7 h
}" ?* L) M, {( a5 _0 \
/ W# A8 E; X# l
public Activity activateIn(Swarm context) {1 F! Z& _3 ]2 N' z; C+ S
super.activateIn(context); u6 n& t8 S4 X
schedule.activateIn(this);
7 a+ R/ ?5 n" U B3 a return getActivity();& s4 _- _1 y: `7 ~
}
* w) Y3 y7 Z1 k
; f y W: n7 t# P public static void main(String[] args) {
7 {( i# Q# h% @! E5 D Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 T" S5 j4 S9 V8 `" I
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 @. O' N1 L$ | swarms.buildObjects();3 V6 j' {* H# \- U" a
swarms.buildActions();9 Z' F/ \. t& P5 G) Y" O! b2 i
swarms.activateIn(null).run();
! I y/ N# M0 Y7 U0 z- }! D% x }
: W* \# C- A o( o& _5 E, i2 ~+ F' I3 S
} |
|