|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 g( u1 w, i7 U4 T
, c+ \" ?, e( s! i0 [& z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 V7 s. B$ c( D4 S G4 [* A* T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- V# Q- `5 t2 {) Z4 b6 }" w% q) \& f& Uswarm.SignatureNotFoundException
' H' G4 M9 m9 t$ Z at swarm.Selector.<init>(Selector.java:76)* B: \$ f* i- d& x* b' P' M$ _+ D
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% i- ]/ ]1 C4 X, j7 f
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; v4 G- Q1 {( z* S' f+ ^
. z% [: I# M9 o. K9 A7 U6 h6 H/ |, K: }5 z
import swarm.objectbase.SwarmImpl;* ], u: X1 S" m c2 d5 c q
import swarm.objectbase.Swarm;
1 w+ n5 k/ {$ d) Rimport swarm.activity.ScheduleImpl;7 {0 N$ e4 V: y& r
import swarm.activity.Activity;2 I+ F) d6 P) j v6 G% L! Y5 N
import swarm.activity.ActionGroupImpl;: Q9 L& d4 C# r% s( X
import swarm.collections.ListImpl;: t% n: x! f$ v; C: Z7 U, V3 c
import swarm.defobj.Zone;
+ l; g1 j! {) \2 Q( Z% h. Iimport swarm.Globals;
5 _" |, s3 ~: limport swarm.Selector;8 E# k+ q" d4 L9 X9 q( ~3 O
import swarm.activity.ActionGroup; , P( t0 D+ d5 S7 j: Y
class Agent {/ e; \% C' ~+ ?. Z+ n
char id;
/ ^8 T! v7 q0 z) n4 C; S/ c: H3 K' O. ?+ H+ D
Agent(char id) {7 R- h2 ]5 }8 e S6 N U
this.id = id;
. z$ Z3 b# i2 L0 r8 ^3 D) Z }
, s6 l- g% x0 q1 [; w/ ?# J) D) }
public void agentStep() {8 Z: x1 l7 x3 F2 R d
System.out.println(id + ":" + Globals.env.getCurrentTime());# ]: ]2 N, L0 [0 x! y
}
! @- y+ }* n3 ~0 d3 `2 D}# e$ V* S; @/ I
* G$ C9 a8 s: b5 Ypublic class ActionGroupDemo extends SwarmImpl {
9 Y2 m+ j9 t' |4 C, R' j ScheduleImpl schedule;; v" Y* h% M f& _1 c6 V' F
ActionGroupImpl actionGroup;
7 e7 T' d' P/ B2 W C ListImpl list;$ p" @8 i5 {8 ^1 }1 U: ]
char Id = 'a';
J! f9 c) a' ^; Q- `7 S7 ^0 r+ Z3 \5 o! Y1 i
ActionGroupDemo(Zone aZone) {) b8 r' x. M% z1 i# q" @. V! K
super(aZone);
' V% y) ]. S% e- p3 D list = new ListImpl(aZone);
% H- }0 ?' k3 W0 A* T5 Q swarmSetp();* I1 W9 d( ~3 b) q) N0 ~
actionGroup = new ActionGroupImpl(aZone);) W+ ^: `3 K+ r" o
schedule = new ScheduleImpl(aZone);$ c* O# D0 n5 M+ A
try {: |9 d. u! w- d5 D. P
Selector agentSel = new Selector(Agent.class, "agentStep", false);
* }# O) W2 M# E1 p+ K! l Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
u) \0 r; Q# P# X - F( s( ^- K0 V% P
actionGroup.createActionForEach$message(list, agentSel);
, E2 }# u9 W! M* l& b2 g% r actionGroup.createActionTo$message(this, swarmSel);* b& a2 K7 T% E: Z! ^" t; I
schedule.at$createAction(0, actionGroup);
3 z2 @; c4 f% j7 O3 i( s1 x% U schedule.at$createAction(1, actionGroup);! z$ i4 N0 f1 w
schedule.at$createAction(2, actionGroup);3 v" m. |1 B l
5 C; g! y, ~* l: k3 B; w
} catch (Exception e) {
) Q4 ^: Z D, i e.printStackTrace(System.err);( x( p, V3 u) ?
//System.out.println(e);) s* p% m- J: f% I- e( D7 x
System.exit(1);
6 @% [' ~. k' x }
2 o$ i* e: H4 k
9 w3 B; O' x& C' S# J7 u( q) n# \
, x- e9 C$ P; B, `1 {6 S }
( c! }( U4 n) f4 M
# x& b/ a% H. i0 @, k private void swarmSetp() {
! W8 ~2 G4 X* N: D list.addLast(new Agent(Id));/ p! c% N: V, X$ e
Id++;
! @6 t0 X v" { }
# D9 f; P$ e7 X4 l, h3 C7 r6 c8 j( a
public Activity activateIn(Swarm context) {
. b/ ]; D0 u- S4 T6 M' I6 G super.activateIn(context);- P/ l7 [3 i4 O7 o# T% y! E
schedule.activateIn(this);
( f' X0 Y. J7 l b8 x! q return getActivity();6 y Y+ }4 Z6 d; }2 f: _- |5 o
}: E6 U* \, E% `3 t
9 P- G4 d. o+ r7 u3 Q public static void main(String[] args) {# t Y7 G7 F# k o$ ~
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 Z1 L* H/ I1 o3 L3 y
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! Y1 R; b8 V; R swarms.buildObjects();
0 {% z/ \! |2 h' o swarms.buildActions();/ C7 I* K% @9 o! {1 b
swarms.activateIn(null).run();! Y, p; l, w! o" C# Q7 l
}( h+ L6 ] B6 q
" A: B$ Z5 P. ~} |
|