|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# Z8 R. G1 a& {! ]& V* C" J' W* h+ E" {% r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
H! m4 M" b9 d0 H r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 W+ y- B) Z. u2 Z& A& Z9 ~. U
swarm.SignatureNotFoundException8 J3 x& T. p6 J G- h
at swarm.Selector.<init>(Selector.java:76)1 Y. [- K. z. z* k
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# r; U: O5 y3 U at ActionGroupDemo.main(ActionGroupDemo.java:67)
* {4 g: N$ Q4 R4 b& p: X5 f; [# b/ {0 K: o: V
H' P" D2 q" u% d1 v; C' pimport swarm.objectbase.SwarmImpl;0 `: f6 Y# o2 c& P) N9 ^
import swarm.objectbase.Swarm;
! W; H/ k. J0 q' b1 z4 V& S/ ^import swarm.activity.ScheduleImpl;
( W5 d2 I& H, I) j- A+ Qimport swarm.activity.Activity;7 e1 U7 m2 K1 {* ]4 o
import swarm.activity.ActionGroupImpl;
1 J, A3 G7 z9 {) dimport swarm.collections.ListImpl;% y- O1 ^3 N" M) B0 B
import swarm.defobj.Zone;
, v3 c6 E* M0 u* T- l ]8 p Yimport swarm.Globals; h" r$ S1 f" |7 ~; S$ u% q
import swarm.Selector;/ i7 P7 H! t% C& O, f$ n
import swarm.activity.ActionGroup; : c! W6 D8 K! y
class Agent {
2 g/ Z. T( _6 C& B0 v5 ~ char id;
1 i" }/ L; Q& i
4 s8 c0 i& n4 A. x$ p7 s8 h# k Agent(char id) {2 U C) x* l" v
this.id = id;; j/ d" j. b* |. k) g1 _. g7 E$ s
}
: c% _: o8 U1 ?. _! Y/ h' C, O* j. Z( I- B5 `0 w# U+ k2 J9 S
public void agentStep() {3 X' W( E* Q/ c F: n6 F
System.out.println(id + ":" + Globals.env.getCurrentTime());* W; t1 W$ |( h; z( U7 W- m5 F* {
}
9 o3 o7 r+ \; Q7 h+ i- ~8 ^/ z/ r+ {}' v' w2 c5 J& A5 s g. F* H
/ R) q; m( u" h: Wpublic class ActionGroupDemo extends SwarmImpl {
: e/ D; X7 t+ E ScheduleImpl schedule;' D5 G9 Q" F8 _8 R- g
ActionGroupImpl actionGroup;0 J$ \3 H0 Q; _3 |: ^$ L
ListImpl list;, H6 [0 S% j) c8 z
char Id = 'a';
6 D9 M5 N5 G: J; f# R! l0 ?/ d- H1 k$ D. c
ActionGroupDemo(Zone aZone) {
+ M) _9 ]7 j2 X c( |% } T. ? super(aZone);
, q5 i- M! Z S8 i list = new ListImpl(aZone);
# o2 w: r: o/ W" d& R& B swarmSetp();
7 p. \ W; J+ G$ k+ z& s) C0 E actionGroup = new ActionGroupImpl(aZone);8 m( } O4 J% G2 M8 q
schedule = new ScheduleImpl(aZone);
: v4 q5 P; o J. \ try {
7 l; F2 j/ ^( `* i; j$ r% ?" ^' a Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 b. D' d# I; N+ i Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( j, N, e+ ~3 ]3 o" m ! W5 V: y: T" C
actionGroup.createActionForEach$message(list, agentSel);& y' L3 h9 A1 P* X, o1 t) W0 D, a
actionGroup.createActionTo$message(this, swarmSel);
9 Q9 \! V0 \; E schedule.at$createAction(0, actionGroup);
7 a1 R/ l" O# e; [% M" M schedule.at$createAction(1, actionGroup);4 Q4 J* m# n" H! K
schedule.at$createAction(2, actionGroup);
2 V3 f& [- Z2 N1 w4 x/ @( E, d7 m8 m7 A
} catch (Exception e) {
7 n" ^. A! G0 q e.printStackTrace(System.err);
! P# Q/ S& z f: A, R/ I' \6 f) Q //System.out.println(e);
6 O4 Z( W; ]4 V System.exit(1);
& P' V! ^0 r- v& r }! R% n- D: k6 `2 X7 ~6 I
7 _! _/ g: B( [/ v, Q+ R2 g' y! p! K3 D: D' r4 g7 @
}- J/ S* N* ?5 S6 ~
4 a" b- h' }1 W. C! Z. g! ^
private void swarmSetp() {! A! `9 z5 g9 y8 L3 `3 L
list.addLast(new Agent(Id));% v! U# F; ?6 w( B) E9 u( N
Id++;
# s; a' d( B/ d) J }& O- I- S. g m# Y
0 Q$ q( D6 ]6 S* I) _: i* F
public Activity activateIn(Swarm context) {% l# d) C+ G) h- ~9 ~. L4 t3 q
super.activateIn(context);4 D( E* i. Z0 e4 X
schedule.activateIn(this);' X) C8 i5 z7 `# B# O+ H4 w* `
return getActivity();
+ s. E9 k1 `# K d4 ~ }
6 _: U0 u8 [3 k% p( }0 I! `
8 U+ G5 J/ z# x1 q; E, `$ Z public static void main(String[] args) {/ v" o! W$ m2 w/ y! Y' Y( M r2 e
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# S7 g0 G c: p4 w' m7 {& W
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 X: ~/ o2 E. d7 [
swarms.buildObjects();3 D) O% I& }7 \3 y) c, x0 p
swarms.buildActions();
8 m! e1 F7 Q# a0 P/ o: d3 k swarms.activateIn(null).run();$ G' l D3 ]; k; p1 x! Z" H
}! E: _) a6 B- F- g
# l* ]7 t a; i7 b3 k
} |
|