|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 C, y" g/ v/ @2 Q" g
- F! d: N, o& |& r& J: D' ~. E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# D5 ]" }$ ]5 {: \( ^/ I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ w2 i" q2 S, K" @; ?5 F- j; e: J
swarm.SignatureNotFoundException
" D( ]5 s c( a! ]9 a at swarm.Selector.<init>(Selector.java:76)- M6 U! k+ r$ S( K4 F0 t. D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ W6 d6 l" F7 D9 `5 `
at ActionGroupDemo.main(ActionGroupDemo.java:67). v- Y: }4 V( ?& W. b6 ^# V
; q, Q0 Y& p! L, `. {* H! @5 y3 w3 W) \$ T. g
import swarm.objectbase.SwarmImpl;
; |$ E2 B, n8 \2 @( N$ j4 O7 P! Q. wimport swarm.objectbase.Swarm;
* g- {- n+ ~; i7 |$ {- _- `import swarm.activity.ScheduleImpl;
6 x% [5 n) I0 M7 x0 J7 |2 a, ^import swarm.activity.Activity;8 n" M/ Y& J V8 Z; b) m
import swarm.activity.ActionGroupImpl;& x+ g" R* q& P4 @7 y
import swarm.collections.ListImpl;
5 t+ {' ]7 X9 k% J. l Ximport swarm.defobj.Zone;
7 T, P' E( u. }# rimport swarm.Globals;
& R! G- c' b, d5 H, u2 e# aimport swarm.Selector;
" X. Q2 a; ^3 o( Q4 W, }import swarm.activity.ActionGroup; / Q& e; Y4 f/ Q s$ d3 j- U" h
class Agent {, C4 O, Z$ n1 W2 G, l( I7 t6 u" L
char id;, _" X5 E/ f4 F1 y' O
0 j1 p# Q( e$ W6 v% Z2 R Agent(char id) {% f& N) d: I+ @; i$ R2 h$ v7 B
this.id = id;
8 _5 F+ ?& `2 y" h% T }
, D8 o. [5 H$ V; E, w, X( Z+ [+ x: S" k/ e5 w
public void agentStep() {* Y% x8 g4 b5 N5 u* k$ ~ _
System.out.println(id + ":" + Globals.env.getCurrentTime());
) c0 P9 B3 C, o }3 B+ d. A h# M. ~. g
}
$ M: B, Q, E+ `* n( g+ `( k- d p0 s# H3 H6 q* ?% |
public class ActionGroupDemo extends SwarmImpl {, b: B: q" N4 h/ \( J9 `
ScheduleImpl schedule;
! h1 ^. T, _0 ^! B. T ActionGroupImpl actionGroup;
% `- a2 a" H: C/ u ListImpl list;: U. a" P( u7 x
char Id = 'a';) |/ @* N" \0 ]0 L
4 N& ^( `1 m& |! [ ActionGroupDemo(Zone aZone) {
' K- Q: v+ k" e/ v% Q super(aZone);3 b3 @' K# W) r9 `1 F
list = new ListImpl(aZone);) Z3 C' y* J; r, i* f5 @7 I
swarmSetp();
( j; H/ R$ o6 v, `0 Q# ^ actionGroup = new ActionGroupImpl(aZone);
2 t! }/ H& B9 m( D schedule = new ScheduleImpl(aZone);- B. |* j5 Z0 E' A
try {& \) C6 ?: l2 t
Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 A F) L8 E; H* q$ W ~* P$ c _ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, }7 w2 a2 k0 s6 a/ x
# C% G- I1 R6 K+ `* m' L* t
actionGroup.createActionForEach$message(list, agentSel);- R+ h5 Z% d P e
actionGroup.createActionTo$message(this, swarmSel);
6 S0 |5 U7 D9 n* m7 R schedule.at$createAction(0, actionGroup);- a& I# Y {, ]. h
schedule.at$createAction(1, actionGroup);
8 O! D) o8 F I h: R% c schedule.at$createAction(2, actionGroup);
" Y. _* A( k7 A% \9 a% ?* S) j2 ^- N
} catch (Exception e) {( s# A% X" Z8 |
e.printStackTrace(System.err);
5 ~7 c& l4 v+ l& i //System.out.println(e);2 ~6 f$ N, A* {, ~$ y! ?! y
System.exit(1);" I2 F/ q1 S5 t3 h; A2 ^
}
6 b2 y* ]0 Y( P$ P ~ p( j, A# o* J6 ~7 b. i" X3 \& Q5 c) ^- Q
4 h V. [# M) n1 V t" D }7 C6 _6 k/ P& A5 T3 |
! W/ q4 G. e8 P8 U1 t private void swarmSetp() {
6 d: p% r- d: W' `! a2 L1 \ list.addLast(new Agent(Id));
( e% t# Z! U* l5 w: F6 x- M Id++;
; z- y3 j; C2 T& V4 J& w! e* i2 u. O, [5 N }
; P% W- _3 q, j% |$ n+ U$ d6 z& ^5 q9 d; f/ C
public Activity activateIn(Swarm context) {
* i- }( D2 D/ ?' [6 @% w super.activateIn(context);4 C) s' N" @1 [; F' {
schedule.activateIn(this);
& F) T' ~- l' m/ A8 @ ?) K4 f; X return getActivity();
/ Y" `; A: a5 ]/ ]- n, z4 t4 R# z }
# }- H: g+ B7 ^2 } ?- E; q5 H6 U6 o/ v0 \/ h+ I3 w
public static void main(String[] args) {
5 P5 l8 _- H+ n# H( _ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. O6 U6 I, E% }4 w0 o$ `
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 F! I- j/ N" ] H1 `! I/ @, z
swarms.buildObjects();
, {* z, l( k' s2 Z' d! L& V swarms.buildActions();
+ b7 ~# Q/ r$ M3 @: q6 g swarms.activateIn(null).run();
) w7 w/ K3 M, A. i }. k; f1 {- f& a% N, J+ z
7 j9 ` I, b/ v! L b# k0 _} |
|