|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! l& a# B8 D% j+ T
: O+ d) t! o7 J" c+ B r) a1 Y3 A% \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( _6 B! o5 z$ Z& i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- w& E, Z h& q5 ^
swarm.SignatureNotFoundException; ^. N* r: ~' s/ ?# w+ j5 R# ?
at swarm.Selector.<init>(Selector.java:76). W/ }( S: K& `3 j) Z. H2 A
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- o6 q; }( o) V' H v% Q at ActionGroupDemo.main(ActionGroupDemo.java:67)1 G4 c) a7 K1 ^5 D1 y
- ?0 B; g1 Q6 v8 W. Z" r6 d v! X3 D/ t
import swarm.objectbase.SwarmImpl;# u: f( q1 Q0 A1 y3 |2 y, z- }
import swarm.objectbase.Swarm;. j* q j! _$ F' v3 O6 y
import swarm.activity.ScheduleImpl;
- F/ L# }+ n% E, L9 @: Wimport swarm.activity.Activity;
9 i4 o9 j, Z9 |' dimport swarm.activity.ActionGroupImpl;
6 S7 J g: g' V8 iimport swarm.collections.ListImpl;
" i6 l1 m4 e0 Z7 @$ oimport swarm.defobj.Zone;
3 ~8 D" M7 g+ j. {, f \import swarm.Globals;
8 ~* y* q) ?( Z3 G/ p. vimport swarm.Selector;0 q- ], y( q6 [ U! @
import swarm.activity.ActionGroup; - A. C4 @2 b" X* P7 ?, K
class Agent {3 L4 H% c; l1 f+ z2 |- w
char id;* k8 G# p% E; I& U- B# Q' }) X
: Z/ e8 V$ |( ]7 R* V
Agent(char id) {; {7 ^1 G2 _+ u) ~
this.id = id;5 S _2 V3 Y0 ]' V9 u3 e
}2 O9 h# J {& u) ~0 c
* p8 p( i7 e% `! T public void agentStep() {. a4 k8 E- M5 M0 G. R" C- P# \
System.out.println(id + ":" + Globals.env.getCurrentTime());. o2 [; E8 ~' r6 _6 Q6 W
}( V( j6 U1 M7 C C
}2 n0 o" q5 ^; T1 D) m
7 c4 r; E: X) C& R* lpublic class ActionGroupDemo extends SwarmImpl {
; N& D' q; F( l- y6 `2 I2 n ScheduleImpl schedule;9 o- e4 q/ m9 j/ Z7 ~9 i
ActionGroupImpl actionGroup;* O0 \9 f( ?: ?9 }* d7 L6 f! N
ListImpl list;
- Y2 |" X7 x. K" g char Id = 'a';
& e! ^, _0 q) _! o* I, j7 |; F. ]0 m @) |$ g* y: W5 L" [
ActionGroupDemo(Zone aZone) {% ^; x5 c G1 ~& E' h4 S0 ~
super(aZone);
. c# M/ t( i- ^9 n7 Q/ @ list = new ListImpl(aZone);
; u9 K% V3 V) t* E) l swarmSetp();
7 _1 m0 b9 b! R0 Z actionGroup = new ActionGroupImpl(aZone);
+ @& O; [$ B* g schedule = new ScheduleImpl(aZone);. B1 N0 q( {% P8 @( f k! @( N
try {
i8 s- e% C6 d Selector agentSel = new Selector(Agent.class, "agentStep", false);/ P+ t( T9 v0 j2 E8 s4 Q4 l& }
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. V3 \% K7 o% Z9 {
4 V0 Q% Q f& f' D+ j actionGroup.createActionForEach$message(list, agentSel);
0 c: d" C3 u K; l actionGroup.createActionTo$message(this, swarmSel);
6 m0 M" B& W9 b2 ~! g+ U schedule.at$createAction(0, actionGroup);+ a3 W- ?) \; g4 N0 O7 `- I
schedule.at$createAction(1, actionGroup);+ p8 q) Z: h: u8 h1 v! l( @7 h& V
schedule.at$createAction(2, actionGroup);4 ?; M3 G( n0 R/ |+ Y* E3 T
) j+ c& E# ?, [ } catch (Exception e) {' t: ^3 K# s- C& p
e.printStackTrace(System.err);
9 \2 ~0 @! R/ P q% i9 c9 B# M //System.out.println(e);
% q/ [4 C& c% B$ L5 H System.exit(1);
* F' i9 I* O t b* C1 T" D }$ C1 L; _5 ^3 U( X! Z* D% n
6 [9 s4 U2 T: g# t3 ]4 ]/ \0 i
+ ~/ I# P) c' b, Z- R( k7 l
}
! ]9 n8 P7 B: B* v% r
/ s3 z! g4 M$ i. `: T private void swarmSetp() {
: U. F: [3 u2 L; Y' a list.addLast(new Agent(Id));+ d$ x, ^5 Y8 X( |
Id++;
2 ]5 `4 D, A; @8 ~7 D4 V! [2 r }
2 Q3 n4 w9 O' X$ }' w
8 e3 u) P# k+ F3 y public Activity activateIn(Swarm context) {: Z, |- ?' o# D$ q# C* J' a
super.activateIn(context);( w# ~+ R$ P5 {! m) i0 W
schedule.activateIn(this);- a5 G8 @" \" l! F" P; U j2 q
return getActivity();
4 i0 w, y! I8 D) v; K- B }
z- S5 d9 F' H8 t" _ k( ]& e- c0 \1 Z+ c: f$ H; S0 L
public static void main(String[] args) { @$ K6 x) {6 Y, K' u6 ]
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 _: k5 c G6 S Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ {; |1 D9 Y1 i
swarms.buildObjects();1 `2 u, x2 p, m3 _
swarms.buildActions();; c, l4 D4 W8 v8 Z: U y& D! \
swarms.activateIn(null).run();! \9 g; Z" u/ @) {( r3 Q) F0 \
}9 Y5 F+ w3 y1 W% r5 I# T! L6 G/ S
6 Y' { Y1 l, B+ X} |
|