|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 ~1 i( F% k+ N
, @4 s8 E) s$ W* j9 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* K2 Q6 S! p; l- v. n! Y7 _" W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
Y* ^: i5 e, _2 D3 Q: yswarm.SignatureNotFoundException
0 Y$ f- c$ D& r% ? at swarm.Selector.<init>(Selector.java:76)
9 m4 D' c, k A* U" `% a at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; T5 C' {5 O6 i' |5 |, ^ at ActionGroupDemo.main(ActionGroupDemo.java:67)
s2 W* i3 y) u; u A
7 D3 c; k8 j9 \9 ]: K
. _ g H3 X. k' E# nimport swarm.objectbase.SwarmImpl;( Q3 X0 {2 e/ \' u- g v
import swarm.objectbase.Swarm;: k7 G* P: F) L/ w; h! ?. C) c4 y3 p" ~
import swarm.activity.ScheduleImpl;# z( z' n s$ g
import swarm.activity.Activity;! S6 p6 v$ E+ N, t* A
import swarm.activity.ActionGroupImpl;1 ~" y$ B, p/ H. E" R& J- D
import swarm.collections.ListImpl;
+ e' T, K" [* nimport swarm.defobj.Zone;
; N3 ~9 S, @( M5 Timport swarm.Globals;
5 @$ I& T* ?; B- \import swarm.Selector;0 `. T6 }1 Y$ n. m' I. w* H
import swarm.activity.ActionGroup; 4 _# Y ^# r( e
class Agent {
6 W8 L/ \ D/ O( z% n5 E; z7 I, @ y- w4 | char id;
! u0 s1 u. ~/ ?* B1 T3 G( D1 k) `& z: g$ X7 ]2 v# V
Agent(char id) {1 T* m3 {3 N8 E" d
this.id = id; z. M! u: a$ b+ {" x+ F- o4 b
}
5 |9 {9 {% g9 b# a9 O' @: h ]- N) `8 ~$ B, W4 p- \
public void agentStep() {5 q# E/ [# ^( f6 F8 m
System.out.println(id + ":" + Globals.env.getCurrentTime());' j0 j6 Z' p, y: ^ D
}; a% I) k ]+ S0 j( ] B
}3 |, R: J; d% n1 L" W4 Q; G4 X
) R1 p6 A0 t: @2 s% c" `& fpublic class ActionGroupDemo extends SwarmImpl {) l* \9 A0 E1 x9 |
ScheduleImpl schedule;
2 r6 b1 X( B4 G7 V ActionGroupImpl actionGroup;9 O) j1 _2 x5 A2 P. j) M
ListImpl list;2 [- d2 q5 k6 q6 `" x0 c' L- ? e
char Id = 'a';+ O1 `; x, b# p6 G+ m0 g8 d' u$ _# Z
1 |6 k# D4 ?& v! N& s. f0 ]
ActionGroupDemo(Zone aZone) {! w" V! w' ^. r K& q4 \
super(aZone);
) d `5 |% X- \. L& z list = new ListImpl(aZone);
" H3 x$ n6 i u* j( ~8 \1 h swarmSetp();
4 T/ ~2 Z$ ^ m1 j! I, p9 e actionGroup = new ActionGroupImpl(aZone);9 @0 Y. Q$ Q2 A0 d) j$ u3 z2 _; k
schedule = new ScheduleImpl(aZone);8 m" x6 T b5 {6 O1 f7 p
try {
5 v. L1 R1 V$ c( {. w- w# o) F+ @ Selector agentSel = new Selector(Agent.class, "agentStep", false);
) _ X! J) a# [/ R' Y& l8 W5 a Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 ~) J, j" C" K3 u
[. |+ {. s( V1 Q, A" Z* o actionGroup.createActionForEach$message(list, agentSel);
& X) H9 h. y; g+ N actionGroup.createActionTo$message(this, swarmSel);
, \! K. T$ f ]2 K schedule.at$createAction(0, actionGroup);
4 q, ?2 A4 T/ O schedule.at$createAction(1, actionGroup);
2 p K. B1 Y" ^ schedule.at$createAction(2, actionGroup);3 `5 P+ E$ F Y! Q0 T# ]9 X
& x/ k" w3 a# t# T
} catch (Exception e) {
" \4 N3 k( t5 I9 p! C e.printStackTrace(System.err);
1 J F1 s, \% t% S3 d# J //System.out.println(e);( V/ u) V% F h5 Y6 F: g. b
System.exit(1);$ P' [. O! n2 i% o0 h
}; g7 A2 g3 |$ \0 u' X
: R$ ~$ K$ f7 a; e3 h
4 n0 W$ I8 a6 P7 r* O% i% A% ^ }
7 X' ` Q- p) I+ v1 D' h1 `6 V9 @! N: y3 f8 s3 U
private void swarmSetp() {. o# A0 u3 ~6 N0 ]
list.addLast(new Agent(Id));
( s! I( c% w8 N' O2 x. J# u5 L4 ~6 ? Id++;
T. V+ h8 G0 f* X$ ? }8 D* u9 C# @* G6 ?! [
5 t7 {6 `; F5 Y/ v' f public Activity activateIn(Swarm context) {
+ W0 ~$ p) b1 L1 v super.activateIn(context);/ h! z& S9 P1 s' h3 C& ~# g4 E: H
schedule.activateIn(this);
7 x, u: v$ ^) F5 A4 H return getActivity();
% S8 j3 P5 m4 w- [7 K6 b }, H( A% G% D$ B a" f
; d# Z* `/ g M: d
public static void main(String[] args) {
& w# e9 r' g. V+ R8 H/ _ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, V, b; |. e' ~; ?8 t$ N# Q0 z
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 \+ @1 ]6 }. b6 J swarms.buildObjects();- e" P& J) F0 k$ }
swarms.buildActions();5 d, m3 r, o; {
swarms.activateIn(null).run();. J$ M% W! r- g5 e9 ^9 f, n
}- @- U- Z/ ]) e' u3 D
0 t4 B: u0 d5 O: w p" ?$ b, K} |
|