|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 I$ L" |% D8 @5 y, H O
' r- n4 F: b* ~( w, D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 |7 u- }! o( H- W2 g% x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 Q+ G# v5 U7 L- [+ s& }5 k7 mswarm.SignatureNotFoundException5 C% U: U0 L+ |1 v8 T5 E6 a
at swarm.Selector.<init>(Selector.java:76)/ E* s8 h" Z$ y6 B' [6 b' {( M
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 y' _, A9 c6 _ Y% c" f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
' @# a, f3 Q' t: p8 n
' |7 Q9 L% n8 J) E; Q, S& u, Y/ V" [
, d v) C- h9 qimport swarm.objectbase.SwarmImpl;
) ~9 X' J( Y, W3 A+ {" ~' eimport swarm.objectbase.Swarm;9 [! A0 X8 r/ I
import swarm.activity.ScheduleImpl;
7 C" A( I& A9 t' k+ Q4 ^. q" Oimport swarm.activity.Activity;
0 s6 G+ Y$ A! Yimport swarm.activity.ActionGroupImpl;3 x# k( z2 h+ _1 m
import swarm.collections.ListImpl;' r6 d- M M. L- ]
import swarm.defobj.Zone;
" ~' ?* J8 u( j+ l, W( _! P; iimport swarm.Globals;
+ d' R5 o( G$ n, a' k; aimport swarm.Selector;
( ^. J2 `9 r# W2 K* a! x8 simport swarm.activity.ActionGroup; 3 U& ^/ w4 n& i8 W* E$ G% t
class Agent {
& s8 ~$ z. m9 {: K! X char id;
5 X8 M' I; `0 K0 Z* I, [7 o7 k1 O! K6 z- r. Y9 @( {: h
Agent(char id) { k6 d/ O0 i( C8 S6 N5 L8 N
this.id = id;4 H) v& S0 z$ G
}
. C# D1 G# A3 C% T* v( K2 U3 x6 [6 E0 U/ f4 I( ]
public void agentStep() {' o- B4 t4 L2 M7 v7 P+ v8 S4 [& U
System.out.println(id + ":" + Globals.env.getCurrentTime());2 F/ I* [1 ]6 C" X
}
9 ~% h) ]6 k* a5 b4 F. _+ `' _! L" H# _}- d- h$ j1 J" x; I3 N
+ j% I9 m8 ?& I0 k" y6 y
public class ActionGroupDemo extends SwarmImpl {' f& x/ y0 H* b# n2 u+ M4 K$ B
ScheduleImpl schedule;
. m1 P+ G1 T* j- o. M ActionGroupImpl actionGroup;9 o6 o8 q/ Y1 g
ListImpl list;
5 d. T, V$ _; w; A char Id = 'a';7 k7 B; Z7 o5 k: Z m) l
. t9 C { m( t; m, B
ActionGroupDemo(Zone aZone) {1 a! [9 K6 C" _3 S# H- t) R
super(aZone);
" Y) Q1 e# Y, ^' \" t. N, z2 z list = new ListImpl(aZone);
, D0 c* `4 z9 i9 J3 D' @ n swarmSetp();
! B: ]5 ^7 d$ ^, l actionGroup = new ActionGroupImpl(aZone);
& K7 X# K U# H0 c schedule = new ScheduleImpl(aZone);
$ N/ r" D* {6 E% m( s try {3 v5 _$ n. j* _' L/ a% e
Selector agentSel = new Selector(Agent.class, "agentStep", false);6 P9 d/ p t) R( G) n* [/ z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( @8 r* n! [ _ E: M7 t
9 ~2 }/ M/ [' ] ? actionGroup.createActionForEach$message(list, agentSel);
" L6 m" V' b# f2 v j actionGroup.createActionTo$message(this, swarmSel);( H/ X' K$ u' t& o% |" [ K
schedule.at$createAction(0, actionGroup);+ H3 ^0 v2 \! L. N; N- s
schedule.at$createAction(1, actionGroup);$ ]+ Q7 n# d s: o
schedule.at$createAction(2, actionGroup);
( I0 n2 l0 D+ z7 O1 S8 ^
1 j' \% [1 ?4 t! Q1 X" H1 R } catch (Exception e) {2 B' s/ g% F) t
e.printStackTrace(System.err);8 S; H# v) u. V( X6 v' A# \6 ]
//System.out.println(e);
$ }* c1 ~/ e! \% T System.exit(1);3 m* E4 q9 ~; j4 f* `: z* [
}6 w, `8 C4 s( | @0 c: ]# a
1 U" ?7 j. ^% Y4 M( U
1 C1 \, N/ \3 m, \ }
% C2 \% A0 ^7 c& `; ]# m2 ^0 x y% b5 g0 m/ k9 K3 M c4 \& C o
private void swarmSetp() {% v/ t* @0 |: C: ]& ~
list.addLast(new Agent(Id));
" t, O0 R4 R' \# B. u( I Id++;
- y; u: O* C- W" @ w* r: C$ f }
8 l! K, B4 y* O, z3 T% \4 K* w) T+ d% d( y( U k2 x3 V% ]
public Activity activateIn(Swarm context) {
# g% r" b+ B- Z2 h super.activateIn(context);
7 a, p! E( _: g+ ?- r2 } schedule.activateIn(this);
2 c8 C5 H$ f: R6 h9 I3 g return getActivity();
1 \1 x( ~) {8 U- Q2 y }( |1 ^, W2 m2 Q, ]6 P/ O u
) t d# K: p0 u+ y1 x, U public static void main(String[] args) {
4 k* n' f' X( b: _' K) K% {# J Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- H& t4 J( L1 H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, P3 t) _ p! g5 P8 |) r: V8 N5 k swarms.buildObjects();, D/ A$ O- M: B+ B5 P8 w4 z
swarms.buildActions();6 r) A; Z/ J; Y: \ {6 d4 b8 j
swarms.activateIn(null).run();
* v# T8 M% W* N' \ }1 F% R! y' I' B% a2 o) V
! A2 G8 B1 e- ]; ]$ D} |
|