|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# E& h) H, t0 s. e; Z
+ f) Y# Y, a3 D4 F# C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: g1 }0 I$ s% z! m' E$ T6 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 z. b+ l3 d* m& q5 Hswarm.SignatureNotFoundException' R/ ]- z2 x# V6 [& q9 o
at swarm.Selector.<init>(Selector.java:76)
S4 ~" G8 }3 b at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 L6 V7 Q, |$ Q0 ^ N) Y at ActionGroupDemo.main(ActionGroupDemo.java:67)- G2 @ c8 W, Z0 r I* X
' g$ h7 Y3 c# Q+ r0 o
- G9 y- X: {3 U! m0 \import swarm.objectbase.SwarmImpl;) g" x% ^+ J7 c+ B0 v
import swarm.objectbase.Swarm;6 y3 }& v6 z+ K
import swarm.activity.ScheduleImpl;
7 b- n' R! I8 @import swarm.activity.Activity;
+ D q% C" @/ k3 @import swarm.activity.ActionGroupImpl;1 q4 e+ D5 z1 p2 @; n: J
import swarm.collections.ListImpl;
9 W! i. T( u& u% S' P! F1 J, ~import swarm.defobj.Zone; % r3 p$ }( @! P+ c
import swarm.Globals;" U A. H/ S% ]( F3 o; B5 p& R6 |4 a
import swarm.Selector;0 c' d( u8 S; ]! t
import swarm.activity.ActionGroup; 8 c- f9 M8 C o3 s z( n4 i
class Agent {, `5 Y/ J C8 G8 w: W$ M, c" H# i; q( \
char id;
4 h/ [; F! B0 P0 h9 h9 z3 ~) j3 q+ H0 s9 O, h* M
Agent(char id) {8 E" ]7 K0 w$ r; ], ]( R
this.id = id;
) r1 m" o) m* k# j }( ^8 E5 m) d; _& G2 E, U& Z- ^
$ P! b4 I9 S2 w public void agentStep() {3 J- j% B4 A$ P. ?* t" ?
System.out.println(id + ":" + Globals.env.getCurrentTime());
" R) n+ i3 E! `3 [% ] }# A* k. [" X; m3 p4 t
}
! v: O4 m/ V- V& l
& J+ S* F, q0 H& |; N) m9 Dpublic class ActionGroupDemo extends SwarmImpl {
v, ?$ k! X3 h4 R4 n1 u# D ScheduleImpl schedule;: F! c7 I) }4 G: H) _" b# ]5 ~& v, A
ActionGroupImpl actionGroup;6 w; c& n- o9 H* Q" O3 `: v: u7 U
ListImpl list;
% h# B5 W- Q+ \6 Y- z char Id = 'a';( C! @2 C' f! l, Y. V
/ `& H! Y- I$ [( a L- r( r) B ActionGroupDemo(Zone aZone) {
3 \% O9 d# j3 A/ \ super(aZone);
/ t! @: v5 x0 \ list = new ListImpl(aZone);
/ X( ~6 ^( M d" @9 ^* j2 `+ D t swarmSetp();
% @- p; I J; z6 E2 { actionGroup = new ActionGroupImpl(aZone);5 L5 R5 L& Q2 Z! w1 c2 w, M) h
schedule = new ScheduleImpl(aZone);
; B0 x$ e, U6 { try {
) e' @. f) d9 K5 g Selector agentSel = new Selector(Agent.class, "agentStep", false);; g- L N; H- a
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 u3 U2 E& o. c! l
6 g& w* `8 |* Y+ `. Q# V actionGroup.createActionForEach$message(list, agentSel);
1 }0 {0 S& ~. ^# a' f5 M6 r actionGroup.createActionTo$message(this, swarmSel);
8 a) W& k6 C9 q- m5 } schedule.at$createAction(0, actionGroup);
' ^/ B% o1 H+ \# Y schedule.at$createAction(1, actionGroup);$ _, M# C4 A0 Q' C- d: Y8 q
schedule.at$createAction(2, actionGroup);
# v! d/ m3 \+ K1 y) v/ U V! |. M7 S5 x; j
} catch (Exception e) {
8 D R7 R, h" I! e: ^5 w e.printStackTrace(System.err);
! n7 ?# }( f+ u ]+ ~( b //System.out.println(e);
: ?4 c, O% P7 Q( ~, i System.exit(1);
3 l* p$ r) l" [ ~) t1 j3 @$ S" [ }# w9 N$ V8 P9 L# Y" j
/ g- g$ C# J: B& l# `( ^" n7 @
& j H9 z) n* y; K9 _ }0 b: i. f- W7 t
8 m3 b3 S/ o, q+ N; S! q private void swarmSetp() {: y. O+ w0 a" |9 s
list.addLast(new Agent(Id));
1 x- |; k1 o. Y Id++;
5 f- ^; n5 u4 l/ c) b0 S% j5 `, e }
3 x* P0 ~5 a: ^- i P/ W3 E- k0 c* z7 F' M- [
public Activity activateIn(Swarm context) {' C+ I7 N9 D1 s
super.activateIn(context);
{# D2 G5 y( r3 t schedule.activateIn(this);
4 ^% _& {* O5 h return getActivity();) E" m6 O1 j3 }! l: L4 y3 Y
}
: X" b: g% W$ ~' K
* O" [4 R) y3 ^- s. i public static void main(String[] args) {& M+ ~% T; M; O" _+ F1 B- C7 ?
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& z( \5 C6 R b; i- P; P Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 u: g. [* @+ X
swarms.buildObjects();
@+ M3 Q8 }1 p1 N# `9 F9 B7 G& a7 h swarms.buildActions();
. `3 j" L6 A0 r+ E% [& Z9 q* v* L swarms.activateIn(null).run();
/ Z7 C2 M7 c9 ?* [- V9 Y }
. M' y, n) H) c: f, O4 }
7 b( p3 j4 X3 K) L: Z, i: J V} |
|