|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: f9 W/ y0 D+ w* X5 f6 I! f# B0 x9 o# v+ a6 ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, x3 G. S5 Z$ F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- C) v* U, F- n2 ]
swarm.SignatureNotFoundException
, M, g t# K% M' w+ k at swarm.Selector.<init>(Selector.java:76)- T* q4 L9 |- N1 ~/ F
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# l: G% j8 K% v$ F0 u A at ActionGroupDemo.main(ActionGroupDemo.java:67)
' l) N- ^# r* T) V3 t, Y% e! o' h% ?8 K+ v
6 i$ j" U0 N2 P: P# s" n' dimport swarm.objectbase.SwarmImpl;8 ~- R5 \8 c8 a A
import swarm.objectbase.Swarm;
8 g Q# y1 R J' G3 x iimport swarm.activity.ScheduleImpl;1 o5 `% S: {, e$ U2 @
import swarm.activity.Activity;& w1 q& D$ I0 ^' F8 @' Z7 a' V: p
import swarm.activity.ActionGroupImpl;) Y5 r8 p. N$ h/ S- Y% T2 i5 [
import swarm.collections.ListImpl;
2 q+ f+ p2 z! c" O7 rimport swarm.defobj.Zone; ( k5 q# W. D' W
import swarm.Globals;$ c# ^4 x5 O3 K& a" c1 W) G6 i$ f/ m
import swarm.Selector;) e4 Z% C* W8 P: l1 B
import swarm.activity.ActionGroup; 2 q- z! O; V! }5 \) t" H2 \) Z
class Agent {
; ]( A- K6 d$ {; [& W char id;/ l) p: k6 @- q" H: b& n# E
6 |# Q# G1 D% z3 X. } \
Agent(char id) {
/ Q: ~4 v- v) S% Q% w# R" } this.id = id;+ Y' e- w. R4 j7 S3 w+ J+ b
}
9 [$ S! x& H A
( h4 S# X1 K2 S) [) v" a public void agentStep() {
0 J* ^! y' i7 W" e+ d) t& N System.out.println(id + ":" + Globals.env.getCurrentTime());* \7 g% q& W7 T; p
}
: Q# Q/ V1 e6 u3 A0 X, M8 c( U! e `}2 ^" }& `! |: S% ?
1 g# x$ t% W: W5 _6 E* Fpublic class ActionGroupDemo extends SwarmImpl {
' H) e( u" B: v- v& j1 c" P ScheduleImpl schedule;& S' C7 @2 H% \, s
ActionGroupImpl actionGroup;
7 |7 u( x0 K5 e. J1 F ListImpl list; ^: H" s# |! n: B7 W7 l. b
char Id = 'a';- ?/ w; b: A" b/ G A5 k2 {8 _
+ K) I" q/ k8 y2 q% q
ActionGroupDemo(Zone aZone) {
; s$ r" J8 N: Y- V super(aZone);
- W2 U4 o7 C/ H list = new ListImpl(aZone);1 x( R, |6 r) i8 t% i: }
swarmSetp();3 m0 ]: r5 \! ?, l5 D
actionGroup = new ActionGroupImpl(aZone);; F! F, G B( q
schedule = new ScheduleImpl(aZone);
0 D% w& X1 g: _1 G try {
8 U) s5 z/ C I% K# m Selector agentSel = new Selector(Agent.class, "agentStep", false);4 _5 ?! s2 q! K: d$ K( n
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# P* }2 v1 B! q8 {$ v
% X3 {# p' u/ T
actionGroup.createActionForEach$message(list, agentSel);+ h& o, s9 {/ X& `) s5 h# o
actionGroup.createActionTo$message(this, swarmSel);
7 Z" s0 W8 h$ K% L; f! m. q schedule.at$createAction(0, actionGroup);5 ~7 u7 ]& `( a) z" M: R; [' d' S
schedule.at$createAction(1, actionGroup);
5 d& h5 O7 T9 L- O# E) w schedule.at$createAction(2, actionGroup);
/ u! O8 T Y) ?. x5 f+ W6 h* {- {0 R' @0 d
} catch (Exception e) {
+ I8 l, S4 I% h% U e.printStackTrace(System.err);7 y) s2 @ |) d) W
//System.out.println(e);
6 R2 e1 `& @: X' k System.exit(1);3 x: i# L; M8 C, V3 e/ {
}
" v: ~" b, W) x3 x+ K' r, B2 _& |& X/ Q2 Y2 n. I
/ ?; Y" R7 ~# O* `* M% ~ }5 L+ W2 V; h. T- m2 Q. L, W
7 }6 U7 b0 m0 k' H. r$ Y
private void swarmSetp() {
" O* I k% Q$ `+ i( Z B7 p9 Q list.addLast(new Agent(Id));; ` U7 m' M+ K3 p% ~+ L" K
Id++;3 A4 L( f- }+ L- E% r" v
}& w- Q, {1 @( V: X8 _" o
3 i( j( ^) C1 r6 q5 g( ~ public Activity activateIn(Swarm context) {
% G+ N0 T! O7 O: { super.activateIn(context);
" F2 z& d( W# T9 ^ schedule.activateIn(this);
2 _1 [7 T" t0 q ]4 h2 c return getActivity();
$ L: m. `- @# W/ {& K! |& G0 b }
# J9 p9 `, Q4 }$ s- j0 ?: J
. O; g/ B! c& j% k public static void main(String[] args) {
9 T! |5 F( I. @1 _ Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! ^7 N* t, U8 j+ w9 X: D" z1 a' h. ^ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 L2 v$ z; p- Q- F( h
swarms.buildObjects();( Z$ K- `2 I. H Y5 Y5 h
swarms.buildActions();
) }7 b$ w M" |* j. Y4 S7 O! A, Y swarms.activateIn(null).run(); u5 F$ d# m8 w2 c7 x$ k& M
}: }9 V2 i% y5 A
% F' A5 U+ D' ?9 q0 v
} |
|