|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; o/ q" t/ y6 n4 _1 C, D
( Z1 _3 T0 i5 F& V) K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 b _; Q* C& ]: {4 z c- p* a; f5 L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: r1 O- o. k% o* ~
swarm.SignatureNotFoundException! W- C( T4 D* a% N; o
at swarm.Selector.<init>(Selector.java:76)
) ~0 T: w. p" ~, U/ [, _ at ActionGroupDemo.<init>(ActionGroupDemo.java:37). M. _6 N4 X/ I4 v
at ActionGroupDemo.main(ActionGroupDemo.java:67)7 m j, \- D3 b+ j
0 M, b; Q1 \5 ]6 ^# U8 k4 ~+ m
6 e' {* M) X0 U, {1 P( Bimport swarm.objectbase.SwarmImpl;' [* N0 N/ `* v9 j3 G
import swarm.objectbase.Swarm;
! g e7 `+ U2 b! I+ Y- Vimport swarm.activity.ScheduleImpl;/ L0 E! I, N" v w
import swarm.activity.Activity;9 h9 G& c g- Y2 f
import swarm.activity.ActionGroupImpl;
' W, _* P$ Y$ p" y" B. x3 t _import swarm.collections.ListImpl;
; d: F* |* b; U* [& a& Limport swarm.defobj.Zone; 2 U: u9 K. J8 A# z
import swarm.Globals;$ N- d" l/ P7 ^: w# e
import swarm.Selector;" E- F/ Q. T0 Z* }: {" L
import swarm.activity.ActionGroup;
6 n% ^+ V+ n$ x* y. {! p' T+ Lclass Agent {/ C6 f0 w1 g V
char id;8 t& t4 ]' J1 i O5 L# k* |/ Y
$ z2 k, L4 @, Y# b+ q9 ]
Agent(char id) {& Y0 f U$ u, R9 ?/ h3 i
this.id = id;
. O& K5 p- Z$ O9 \ }* \7 `4 j& b$ [5 n" i- |- a4 c
8 T. B3 L. Z! H3 R public void agentStep() {" `( C4 {! q) g; V2 D1 ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
9 w0 S% f+ W- O* A- L }6 ], |7 t/ c% ~8 X; r' C; A
}0 N- ]' _$ Q4 Y0 M
/ t+ R5 A5 ^0 V/ j. Ppublic class ActionGroupDemo extends SwarmImpl {2 j9 W, j) ~; q p
ScheduleImpl schedule;
5 l, z0 T) x' H* w2 F$ y8 U3 C ActionGroupImpl actionGroup;3 u* g( J! r+ K$ X+ q# _/ Q- k
ListImpl list;
W2 Q1 g# F' b) n! A char Id = 'a';
; v" \0 J& U9 P, w( V3 p2 w% N! N1 X" z) f
ActionGroupDemo(Zone aZone) {9 H; U1 C1 [: |
super(aZone);" b/ W. X8 A5 Q8 ^& j4 g5 H
list = new ListImpl(aZone);
" q+ Y' \! b0 \ swarmSetp();! A; Q5 ^$ u. R7 k" z! _) |
actionGroup = new ActionGroupImpl(aZone);
5 Z7 E4 F& n( {( k6 z' D schedule = new ScheduleImpl(aZone);
! d' J3 ?4 }7 s3 A+ [- l: Y2 C try {" ]2 ]5 q' {! n4 y8 i+ D
Selector agentSel = new Selector(Agent.class, "agentStep", false);' |/ |6 \" U+ |4 r1 X
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 {" V6 K6 |' N) ]$ p0 J/ `" W
$ r$ W" i& ?* B1 V) P actionGroup.createActionForEach$message(list, agentSel);
3 r+ O3 F, u% K. j+ k! `( { actionGroup.createActionTo$message(this, swarmSel);# G2 r$ o/ Y9 h. i- w# j- d+ V
schedule.at$createAction(0, actionGroup);
- U! T& w" v. g3 t* N, K; l* N schedule.at$createAction(1, actionGroup);; k2 y) t) r1 C- W- C0 F A
schedule.at$createAction(2, actionGroup);1 ^% V- V& T; G
4 u, m) k L# a, I } catch (Exception e) {
: Y! K b- ~7 L |! s* N# \ e.printStackTrace(System.err);5 {" y+ X+ l$ I" A+ k, y4 m! v* y
//System.out.println(e);! u- x' o# }# ?5 w
System.exit(1);
2 j2 A) J e4 @- x }8 q6 \! j5 g, [* Y. j
* B! W H) J9 a* c7 T, i
( g1 n) X# o1 Q* d
}
6 S8 k) w. Q6 C1 Q' H) G9 m, U( q: w9 h9 ]' X: L6 L; s; L
private void swarmSetp() {
" v7 @, H/ U; D9 O" u list.addLast(new Agent(Id));8 @- r7 n# R! G1 P1 h$ M) C% O
Id++;* Q Q: G) u9 Q L
}
4 d9 d1 g% J9 z I! X7 D$ W) ^1 l2 j2 z$ U
public Activity activateIn(Swarm context) {
: ~, D$ W ^* Y* |6 g, L1 X super.activateIn(context);
f/ A( x7 n# {5 ~ schedule.activateIn(this);
5 }8 {; j& b8 C; I- a E return getActivity();/ m% u* S0 h) e/ }" q+ ~$ t
}( h t* a+ m3 B- { q
: P2 |" Z% J2 a; g* r1 P public static void main(String[] args) {
" e, U! z5 f" l& l Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) c* _' V g8 I
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) K5 p3 {4 R5 c+ x( D0 {1 E. z
swarms.buildObjects();
0 W0 ~$ X6 R& x swarms.buildActions();2 m& L6 b8 V2 }+ w x, B
swarms.activateIn(null).run();9 e; O! Z R% Z' q* [9 e
}
' y" ? {% [8 t; H9 y3 @
4 ?: s5 X$ j: B7 j} |
|