|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! H7 V: d9 N$ t' {# K y- x% H% x8 `) L/ F& r, q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ `; ?- B# i# {4 \* _, r/ R0 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ O" ^4 ^& S% c& ]! }, {6 U: T
swarm.SignatureNotFoundException
+ }- k6 w; I( F3 W at swarm.Selector.<init>(Selector.java:76)
3 t# U: W4 ]. a9 a+ }2 U& M at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" z( `' K( E" s t
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 b0 x5 J# W6 T" V* I# o( G, i8 m4 ?3 ^" q
) `6 ]/ ?5 z; D" I) x3 _( A1 i
import swarm.objectbase.SwarmImpl;
7 |( A! b+ `! o' ~! bimport swarm.objectbase.Swarm;) V3 |$ c- q% _* Y/ f
import swarm.activity.ScheduleImpl;2 Z M) S! D4 J4 X- K" ^5 \7 Z1 `" f
import swarm.activity.Activity;
1 b1 e1 i5 D* |( l8 x @9 B5 Wimport swarm.activity.ActionGroupImpl;
. \4 r R, a+ n! D8 Eimport swarm.collections.ListImpl;; N3 M$ N0 [0 F4 T1 e" C) _
import swarm.defobj.Zone;
6 C9 X; k- Y. [0 eimport swarm.Globals;0 C! O) t3 v8 |6 l2 {# c K
import swarm.Selector;9 B1 R, U& Q" O, J' s% M4 ?- T
import swarm.activity.ActionGroup; $ C2 C9 c0 p3 e Y% U* I6 J
class Agent {
. {( y$ r. V' C; K0 {' q( r char id;( Z( |$ e- ~$ r& Z* g
! F' U& i8 @+ }& ~' v: s
Agent(char id) {
1 b- v4 U2 b4 _: | this.id = id;
, l( y9 g9 f+ d# A' G4 W) Q7 H8 b! R; P }" D& d* w- w- |, B+ P
/ j: M, K; {1 D P: r
public void agentStep() {
1 L+ m( }9 r: f# D! d System.out.println(id + ":" + Globals.env.getCurrentTime());
* @5 V- @, ]+ \# e! b; L! }0 _ }9 V- S0 p. l f- Z" S
}' I& B( D* F, W3 D! v/ q( k
" V. N0 g: s, G. A; Q' b$ _public class ActionGroupDemo extends SwarmImpl {2 `( |- a% v7 m: ^+ N
ScheduleImpl schedule;
+ O/ a% J8 y: I5 p. E% _7 t) t ActionGroupImpl actionGroup;
" E, c$ P4 {0 T* G ListImpl list;
: _6 Y) K) i1 E. M! [. y, c char Id = 'a';
, s& ]# Q: x) j& x2 V1 I" K7 e2 s4 u8 m
ActionGroupDemo(Zone aZone) {
6 z8 B+ y+ z% R3 C% J/ n! M$ O/ l super(aZone);. N$ k9 _9 [) [: B
list = new ListImpl(aZone);
$ w4 i8 e. x9 o- U1 i9 J3 | swarmSetp();* j* ]8 Q, U2 O
actionGroup = new ActionGroupImpl(aZone);
( P5 ?4 d- Z2 ^- O; M/ S9 ~% _ schedule = new ScheduleImpl(aZone);
' k& C+ c' i4 ~1 j- }% h) M5 w. C try {
, b; L s9 b: g Y* S3 \ Selector agentSel = new Selector(Agent.class, "agentStep", false);3 q. Q9 Z7 O" P8 s
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 s: t& Q/ W# Q; I5 ~' C# d
9 @5 J& z( I) w; T+ \* h ? actionGroup.createActionForEach$message(list, agentSel); L$ ]4 _! \8 T5 o3 ^
actionGroup.createActionTo$message(this, swarmSel);
% b" g, w- r. y5 _- T2 `" ?) \% O schedule.at$createAction(0, actionGroup);
2 k( {$ E) \- O. t4 k5 B4 A, Q9 B$ r schedule.at$createAction(1, actionGroup);
; t6 w4 K9 _5 q1 X' }. G schedule.at$createAction(2, actionGroup);* F, B; `1 e. z' z
9 @0 f+ u2 y$ R# A
} catch (Exception e) {
1 S- c, r; N) u! K$ f7 z% K5 q e.printStackTrace(System.err);
' D" W9 J+ K6 [* Q% v# R //System.out.println(e);
# `) x, ^/ @" n' e) H System.exit(1);
5 L* C0 i1 d4 E3 I }# ]- r& s& g4 R
) G* G* r# v, Q) J h0 a/ t7 Y
1 X; |; X" Z- O6 N2 u }
% W- v5 K$ J( S2 R* D- |% d$ A) m- I* ]3 I4 C" U$ o* \6 J
private void swarmSetp() {
$ k4 O( E7 A0 z list.addLast(new Agent(Id));
4 S n0 w- j% {3 g) |- M: W" Z; ^ Id++;0 J. n: I+ `* Y- z
}
6 H7 @; _* b3 q1 G
8 E. I# e5 [: i, r public Activity activateIn(Swarm context) {8 _( N9 k# A& v5 e! r
super.activateIn(context);# `, e3 }! g9 G6 U- t% f o
schedule.activateIn(this);
2 e m, s Q& z) Q5 P return getActivity();; F: W Z+ y `
}
; h# Y2 ?8 W, z" m/ ^: R% T, D( X% |( o |" _
public static void main(String[] args) {
2 N- s" Q" P# z7 ^0 U0 g& s Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 n9 z7 B$ _! w! x Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 S* f6 C: H6 o* ^( O9 ]1 D1 h$ w swarms.buildObjects();
+ z1 f( y' Q8 U& ] swarms.buildActions();; z# h+ _9 Q! G: J
swarms.activateIn(null).run();& D' {8 u4 B# q0 I! W
}
3 \: B& m3 v$ [3 @
# G4 P$ C* N/ }1 G: t} |
|