|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! H. P, Y1 I- ^) L, @' ~; r# [
; K: F6 K/ Z: Z& r( U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% d3 o, D9 t/ g1 g& ?7 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% v- O! P1 E9 U) M+ ~& ~# fswarm.SignatureNotFoundException8 q% X2 H7 ~8 ^9 W2 P
at swarm.Selector.<init>(Selector.java:76)
5 P, m7 D. v# P% o. _# N X at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 I. ?' _: e* S. E, i6 [& x; x( ? at ActionGroupDemo.main(ActionGroupDemo.java:67): d4 m% [9 h% `/ b; q7 ~
7 ^ d( u( ^! r2 }7 G& |: k
$ A) c2 O1 n: }
import swarm.objectbase.SwarmImpl;
8 ~' [" N# V$ r* Timport swarm.objectbase.Swarm;
! x+ Y, g1 a# X) c( ]import swarm.activity.ScheduleImpl;! {- ?: e9 L6 C) d8 J' o& |# s! @
import swarm.activity.Activity;
- ~/ j5 e( S7 E& `, Limport swarm.activity.ActionGroupImpl;
' Q( j) {% x8 eimport swarm.collections.ListImpl;7 |& m" Y4 J* J5 O; c4 b1 \
import swarm.defobj.Zone; + y( Z% A3 X/ K
import swarm.Globals;
# S6 V% l. l3 e; e cimport swarm.Selector;* \6 y, ]/ ]6 n0 z& {
import swarm.activity.ActionGroup;
/ R! ~; b. T3 W9 hclass Agent {
4 `* W8 M3 J6 O$ b char id;' s: r; K/ m/ f
& P+ c, f9 [1 O+ a" g Agent(char id) {6 G! F8 d6 c$ T7 c& J1 N f P
this.id = id;
1 J$ |0 G! D/ n }5 H! n* r1 k* A$ u' |
$ a0 n. Z0 Z) U7 ~% x3 B* s public void agentStep() {/ p9 l) u+ Z# F. c4 [$ q
System.out.println(id + ":" + Globals.env.getCurrentTime());# A1 Z7 }; x8 @" v5 U ^
}$ Q9 n! c9 }! ~8 c
}2 ~3 C6 n, y4 M/ I+ B, v& U- u
# \1 `- ?3 r0 u6 a
public class ActionGroupDemo extends SwarmImpl {
% v' _( x1 b, ^+ f0 F8 D ScheduleImpl schedule;/ u7 R5 R' Q5 Z; p w
ActionGroupImpl actionGroup;
8 k1 y9 v0 Q# k0 T& b; D ListImpl list; r$ I, P* W- K) Z M" O
char Id = 'a';" u! N: {8 k; E. C
' o5 c# r1 e2 ^
ActionGroupDemo(Zone aZone) {
/ ~4 y# ~7 p9 z super(aZone);
. U0 _' v- K2 z2 r2 h+ p( y list = new ListImpl(aZone);
" K$ ^! V% K5 v swarmSetp();
1 @; P' ?$ Q' M5 D actionGroup = new ActionGroupImpl(aZone);, @: N7 q# w" Q" _! E9 |
schedule = new ScheduleImpl(aZone);
+ q- B5 |+ Q6 n9 f. h) B: A try {
6 v2 s1 R4 R3 W6 u1 b& ]& e* z Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 M4 O8 D1 ^' ^' P2 O6 Y9 f Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ _# D8 p7 B8 q& C3 K
+ X- B6 p$ G5 a- h6 Z5 _
actionGroup.createActionForEach$message(list, agentSel);
3 _2 X9 I# x: ~: D# M$ i actionGroup.createActionTo$message(this, swarmSel);! N6 T. e( ^/ F7 Q, Q5 P
schedule.at$createAction(0, actionGroup);. p# B5 F& n$ ~/ a8 T* z( U
schedule.at$createAction(1, actionGroup);
1 n& J7 ^& t8 h" C6 h1 v9 s0 w; S schedule.at$createAction(2, actionGroup);# D6 S0 A3 v& w2 I$ m+ _7 }3 \
J, Q/ R: a5 `3 x, h( m/ y# K
} catch (Exception e) {
4 I4 H( N; \- c) J) M8 j e.printStackTrace(System.err);! Y1 r( c* f0 ]7 X+ g3 {: M: J
//System.out.println(e);2 W8 K5 {2 Q: ^6 P" R) Q% Q% e
System.exit(1);2 K3 X+ O: V( F; m( y5 R/ Z
}
1 y. h F3 d( M5 y0 E, j7 n- D, Y' ]
+ S7 q" K4 c- b }
2 U" S( g U" J6 Q. g# N
% I# q( m% @9 X. }& W$ ~ private void swarmSetp() {
- H0 z5 ^# E3 K: D, Z list.addLast(new Agent(Id));
: n6 Z3 {2 ?1 ~- \ Id++;
M. P7 ^. Z' ^7 O9 e4 d }
- ]7 W/ \# S% d! K/ m. M
2 z8 ^) J; ~( N; @/ O public Activity activateIn(Swarm context) {
' o3 U6 V" h/ @ X super.activateIn(context);0 @% Y3 M. [6 R. N+ }* m h
schedule.activateIn(this);! I6 U0 U, W4 \2 [4 B- f
return getActivity();
; u9 s8 }& H( a3 W, L9 ]" Y }
7 F y7 ]. Q5 `1 }' i" x# [0 E& N2 K
public static void main(String[] args) {
; [$ F: e5 a6 S Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& y9 S- _" b9 Y! q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( x' {6 k5 e: T, ]& ]& M swarms.buildObjects();
4 M: i7 S8 H! c swarms.buildActions();4 G4 t, M( [# `2 E' r
swarms.activateIn(null).run();2 a f W5 @0 m7 l1 c
}
U0 l, o W x) S5 j( B; i* _! U0 `5 i/ k8 p; H3 t! l" ?2 F
} |
|