|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& A, L# j1 @ z- h7 I1 X7 D# ]" j( v
' x% A" ^" ^3 R$ N7 l, [' _1 O0 x% g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ G) h% E- V4 E1 {6 {% k( E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' u$ t( c8 M6 Z
swarm.SignatureNotFoundException
6 c( Y& o, F R3 M7 Q4 j5 R' V at swarm.Selector.<init>(Selector.java:76)
7 F ^' p$ c0 U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 Y7 W, A. R! E at ActionGroupDemo.main(ActionGroupDemo.java:67)8 W2 Q0 [; J9 X
. M$ y6 L# O% A6 ~: u
- g) ^ g7 o _9 U0 bimport swarm.objectbase.SwarmImpl;) i% P9 I" w3 F0 x6 p5 s
import swarm.objectbase.Swarm;
5 z. O6 z! m0 v0 z( |import swarm.activity.ScheduleImpl;
$ G2 [" b, h- ?: r4 Bimport swarm.activity.Activity;+ c' q) H {+ T; P# j
import swarm.activity.ActionGroupImpl;: X! O8 |- D6 C- X
import swarm.collections.ListImpl;6 w8 g* L& {: m) }
import swarm.defobj.Zone; 8 K3 O; p) k9 b1 k
import swarm.Globals;8 O7 c* T9 J8 G- B! j5 K* Y/ r4 Z/ q
import swarm.Selector;
1 S. P& j ~8 q4 v9 M% {5 timport swarm.activity.ActionGroup;
/ k2 X: b+ F* }" K1 sclass Agent {& V" l; U2 \- R6 A, U: B2 x
char id;0 U. f+ I: J' L( d: F. Z
3 e; u2 m( o/ N Agent(char id) {) C2 k! O( v5 Y, E. r* N" B
this.id = id;. S9 d. n6 s: E/ }( f
}
* ]5 f: J, w7 ~! I% \) r, a# l% V0 P4 Z1 l9 K! I
public void agentStep() {
/ x% S; y5 S C1 Z: E' `, z* N0 }# r System.out.println(id + ":" + Globals.env.getCurrentTime());
- z; m3 G' L2 O9 R$ d+ X, f }% u7 ]+ b' q" T. F) Q
}
: j5 E3 b7 B1 w+ r. z$ }0 M j$ {8 g; s: `
public class ActionGroupDemo extends SwarmImpl {4 Z$ r3 o0 U9 p7 ^- @% G: e
ScheduleImpl schedule;5 j9 x% e9 {( Y( g ~7 N
ActionGroupImpl actionGroup;+ W4 d$ }* V! R' i1 Z% n
ListImpl list;
% e! c( z/ G5 Z0 S O char Id = 'a';( r% T+ p' q! @5 X. `1 a
( c5 e1 V9 G; Y/ |( u$ u
ActionGroupDemo(Zone aZone) {
0 h# b5 k/ Z4 I/ M super(aZone);
" R. [" k' }: a4 h$ I; K list = new ListImpl(aZone);4 A! S" ^( C$ z: u X
swarmSetp();6 g. F: E7 ~1 ?9 l$ u8 I. B2 T4 Y9 w
actionGroup = new ActionGroupImpl(aZone);# l$ S2 k+ G, { E5 T* W
schedule = new ScheduleImpl(aZone);) Q* d8 ~" Z2 K( m* ]) K9 T' s
try {
' R+ v; D- H# m& y Selector agentSel = new Selector(Agent.class, "agentStep", false);3 f4 F) f1 x6 ~0 }9 r
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& S: |8 M3 ~) R% K* ~* O/ D
/ C. d0 \7 u: J, B {- [+ r2 t actionGroup.createActionForEach$message(list, agentSel);- n' [# i" ]$ t/ p5 |
actionGroup.createActionTo$message(this, swarmSel);
% e0 i5 ]) v% s4 X- C+ h% c d$ ^ schedule.at$createAction(0, actionGroup);
6 W m1 n* s7 S" r$ x schedule.at$createAction(1, actionGroup);
( N1 E. p" a9 p+ U7 g" D schedule.at$createAction(2, actionGroup);
M Y% L$ O) I0 A9 G% m: { {2 t
} catch (Exception e) {
$ s( N5 x. q! N& a e.printStackTrace(System.err);
# s2 I+ _( L3 D //System.out.println(e);
# K5 [# F, z8 G9 y3 @% r1 k' ` System.exit(1);
" T0 D. o6 V9 z% W) h/ p }% n/ _1 ^7 J& b( ?: w5 I p6 y
' t+ m) h+ M, E0 O; |9 }7 g3 G: i. ^/ A7 @; ^
}: Q; O: @7 [! \9 J+ D& {1 \
2 f, h1 Z4 z7 a- ?5 ?' a private void swarmSetp() {
' w5 r% Y' D. m6 i list.addLast(new Agent(Id));; }7 w1 _* \! k% I
Id++; X: V* ]1 P4 m* @7 c
}
; a- {! }1 W! v5 C# O9 I
8 P4 Y' B' ]$ E% z/ A public Activity activateIn(Swarm context) {/ G7 x2 e4 l6 _ y
super.activateIn(context);) Z- a4 k$ m4 g( O, d
schedule.activateIn(this);
6 n0 C" w' G2 r5 q return getActivity();* [* p) v I7 G* P
}
! ?6 x' d( _4 [, |6 j7 L
1 Z, r* W H# }: F8 n, Y# l7 i public static void main(String[] args) {
$ Q: ^' W4 W3 W Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 ^* ~7 h# n1 Y6 S5 b. U4 p2 B
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- l4 n5 G | Z6 ` swarms.buildObjects();6 C' y+ q" R8 N8 G
swarms.buildActions();
" {, `. S8 h! F9 P. d* F$ p swarms.activateIn(null).run();
: H4 N! ~$ s( U, i- i }
' _- I& X7 i- A; }" q
% e0 M( L5 c" y$ ?3 i# I} |
|