|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% q( i' y( j* V* E Z- {! B
9 L$ u( p/ q4 C$ `8 N+ a9 b5 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- z% E+ \8 [' A, W1 @% @- W4 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ d9 Q4 ]% ?$ |1 L1 D# a
swarm.SignatureNotFoundException! a% R) Q- X5 _' P
at swarm.Selector.<init>(Selector.java:76)! S' H/ t5 t8 \& a/ d" ^
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ E3 |8 d. ]4 o& r K' W$ A; y at ActionGroupDemo.main(ActionGroupDemo.java:67)
- E- k) P; s# Q; ]% `% N: J- e8 z9 [
$ q- B7 X3 B; n# L& N) iimport swarm.objectbase.SwarmImpl;
, @5 I' B( |/ ^5 |. {) l" U2 |import swarm.objectbase.Swarm;
+ \2 Z* e; ~# Himport swarm.activity.ScheduleImpl;
\: v, O3 a5 U- Oimport swarm.activity.Activity;
, \! [. ^: K5 [& r; f8 Aimport swarm.activity.ActionGroupImpl;4 }4 y T7 [0 ^" S; Q
import swarm.collections.ListImpl;6 S0 n0 `5 O- p
import swarm.defobj.Zone; # ^5 K( @2 o9 }
import swarm.Globals;6 u( q+ X* k) [& T2 Q9 D
import swarm.Selector;
7 I- w1 X3 E. I. t& N( T* l' ]import swarm.activity.ActionGroup; 7 `5 ]3 G* F9 y/ D3 f( H
class Agent {
8 ~" Q2 J5 `% K char id;
k! N( {4 ?0 x3 z* N7 f3 W, Z) T2 _- C5 r& X
Agent(char id) {
( v' T/ R& l# F this.id = id;1 Q, L% f! C2 ^# F* t
}
4 t% q$ f: c+ ?* k: Y; R( [2 g- F6 q4 a
public void agentStep() {
4 w, p4 }% m! ]+ b1 z+ x/ @2 T System.out.println(id + ":" + Globals.env.getCurrentTime());
& h# H8 w# A; n: a& d }
& N5 H; ]( W" r) v) c}9 X3 z, [- L8 W( C1 R3 e: Z) R
9 G( y3 u" j( P7 ~! b7 z
public class ActionGroupDemo extends SwarmImpl {
8 \( A/ n- y) T6 z7 ?" k( W; k ScheduleImpl schedule;' |( Q& Z) Q- o" K/ m
ActionGroupImpl actionGroup;, {( Q. E- l% A: H( Q0 n) O- S
ListImpl list;
- z4 u5 M' P% L# x; C( {$ ? char Id = 'a';" M, c+ V) e* q: l3 v t
& ` n5 u1 U5 u8 F" {6 j
ActionGroupDemo(Zone aZone) {
9 d; |' F* Z" L! }9 g) @7 _ super(aZone);
5 m$ x/ `- P; I list = new ListImpl(aZone);
; `' T5 s8 o- S$ f, Q2 d swarmSetp();
3 O! @2 [+ s, H1 d. Z2 d1 U8 { actionGroup = new ActionGroupImpl(aZone);7 m' H5 Y) M/ R9 B: `- W' f7 c* u
schedule = new ScheduleImpl(aZone);
1 e2 D; s4 e- u# b. b try {
$ R4 ]+ Y9 V, z6 W& c4 f" f, b Selector agentSel = new Selector(Agent.class, "agentStep", false);
. D0 N% S5 z" m. @7 N8 [ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 N( ^% O6 {5 e$ n4 n7 k: f8 A, u" h
% U* R4 R; _$ k actionGroup.createActionForEach$message(list, agentSel);4 Q3 N" |5 c# v; J6 F
actionGroup.createActionTo$message(this, swarmSel);
) u4 Y, }, `3 Y5 i& ? schedule.at$createAction(0, actionGroup);; W5 c0 |6 D, n# P) F4 k
schedule.at$createAction(1, actionGroup);# [% n, W* _: X7 f, ?, X
schedule.at$createAction(2, actionGroup);5 i5 _3 O! J3 _) X! ~
- ^# G/ f' g) ?6 l7 m" L3 ?3 V2 M } catch (Exception e) {
( s/ i7 ^/ L% ~* E: T+ E e.printStackTrace(System.err);
: z! T# w) d7 p% Y/ ^6 h% ]( j. P7 O //System.out.println(e);3 m. d! R Q4 W; \1 r' Z% I
System.exit(1);7 N0 g% `4 P! M! [- P" P
}
( {. U7 A$ L- p, g7 \
' R1 ?9 ~1 M+ q3 c' D
. d J D6 ~4 d" s2 F; ` }" X5 g3 `3 B/ V- D6 j% I
! Y6 x: q' A. {# U7 n, W
private void swarmSetp() {- u- `1 N( o* ]! { b& l) k
list.addLast(new Agent(Id));7 a! Q. B$ F8 }/ {, y+ J. Z8 L
Id++;. ~2 K# H1 T1 H9 T7 `: L
}
" H* J3 f% K" c+ x- \9 j, R m! f: {: u
public Activity activateIn(Swarm context) {# L7 y- ^6 } _& M9 n$ W
super.activateIn(context);" [& w7 P* b5 i* k+ H
schedule.activateIn(this);: R2 f/ Z( d: M: H: r, `5 E
return getActivity();. ?0 p( L3 G3 h6 t7 s
}
. J) |( c, @! R t7 ^/ e" i" a7 ^& s
public static void main(String[] args) {
( w# ^( }+ m/ z7 e$ U e+ A; g Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 g4 L; ^. A+ w7 u$ {3 j& k9 e) a
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 b P, c+ F! [4 T4 Z# k swarms.buildObjects();
& ]/ {( \8 G$ B1 o2 X6 V; b: i swarms.buildActions();
/ a N* y& m# l& P+ ~% Z3 k0 m swarms.activateIn(null).run();' ^) _# `! @( z' E0 p
}
# D' B! z& C( l5 I
6 b, _. @8 K" r& L" w5 j2 N0 m' r9 b5 o} |
|