|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 I; @6 T$ ^) |
' R) Z$ b" l# X9 }( A3 [8 [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; f) U: f+ L5 ~* `* o% J! m: I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., L; J5 `2 z' H( X; Z4 H6 N
swarm.SignatureNotFoundException
9 W9 n! Y; I; ~9 B r% ^! R at swarm.Selector.<init>(Selector.java:76). h% k( A. {9 |! [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37): h$ A; G5 m" k# k2 l
at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 O8 C* }: j$ P/ X6 j; I8 I
3 l+ u1 ~% F& i% A* U N8 E
: _+ r8 a6 k2 t4 ^' limport swarm.objectbase.SwarmImpl;+ z3 N6 G. @& b/ x7 e* Q7 ^
import swarm.objectbase.Swarm;+ d0 `8 a7 l. f! r4 C
import swarm.activity.ScheduleImpl;
5 D8 R+ @5 l1 Yimport swarm.activity.Activity;+ x/ V. R# ^7 T9 S
import swarm.activity.ActionGroupImpl;
6 I) K) s7 l( m% B# @4 f. jimport swarm.collections.ListImpl;$ {& W: |5 \1 n: N6 q+ [) j
import swarm.defobj.Zone;
0 }0 c# ^. o5 [" H# F. \import swarm.Globals;' X y' {3 M" e5 c
import swarm.Selector;
V4 P3 M/ \ ximport swarm.activity.ActionGroup;
5 ~1 n) i$ b! P3 A5 r8 f7 g; vclass Agent {
) ^, l" T. E. M5 S* F char id;; h! u: s! A$ k$ A6 \
, U% f$ o# N5 O& t' m
Agent(char id) {) X. x# q" x$ H4 D! {
this.id = id;
9 S7 w4 D: F0 T+ }2 T" \7 ^3 | }
. T0 w* X+ |$ Z: }" v0 `7 O* E% t1 H+ t
public void agentStep() {
; _7 T& @, e8 i6 u System.out.println(id + ":" + Globals.env.getCurrentTime());
/ x* h8 i9 d( V1 S( j3 t6 A! | }2 \3 Q2 m9 P7 f, c2 n- |
}
5 {2 X& P( j; M$ l6 T4 r6 ^0 n7 k; t Y8 w" O4 k
public class ActionGroupDemo extends SwarmImpl {' O# E% @0 l0 {, V
ScheduleImpl schedule;4 c- p+ q K$ s* R3 s
ActionGroupImpl actionGroup;0 e5 C% k9 X4 F0 F) y
ListImpl list;1 h7 m7 [; d* o1 w' h5 ^
char Id = 'a';
; P% E# u# d: [ u, M- X# w
; S( x) s( @* M' i G- `8 F3 c6 k ActionGroupDemo(Zone aZone) {5 j2 O! h* L% `7 G2 U
super(aZone);7 u9 y2 C2 X1 E. B1 F9 w
list = new ListImpl(aZone);
0 W. ^+ ]: j/ O8 g+ \ swarmSetp();
3 \+ ~9 [+ M$ f; C8 \+ ` actionGroup = new ActionGroupImpl(aZone);! ?& n8 L3 \! @) D( G
schedule = new ScheduleImpl(aZone);% O. }- I3 `) W- S$ t5 O8 ^$ _$ D
try {
' _5 r( J0 ] \/ e5 l4 V Selector agentSel = new Selector(Agent.class, "agentStep", false);4 Y6 |" w( j2 @& g; t1 }9 Z
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 d3 W# Y0 i9 e, n1 A, S2 `0 c
6 R3 w. |) Q' }& ?
actionGroup.createActionForEach$message(list, agentSel);- P, Z/ ]6 R( g" o$ j4 K; j( a
actionGroup.createActionTo$message(this, swarmSel);
8 v E2 ?! Y: P2 R/ Y2 |* X, | schedule.at$createAction(0, actionGroup);
5 X" q! G/ q. {2 I schedule.at$createAction(1, actionGroup);
( h2 R8 W5 S. a. T; g2 O% V" e2 @ schedule.at$createAction(2, actionGroup);2 C+ @. {. ^8 Z% l ^* x9 \ r
, Q4 d" M) m9 J) W! h- x" ^ } catch (Exception e) {/ T) Y9 k0 k( N; ^4 T3 @' |
e.printStackTrace(System.err);2 N6 R" W$ _8 Q# O+ v5 n# U
//System.out.println(e);
' ?3 y. X+ R5 r; }& U# W% g+ `+ p( o- q' h8 a System.exit(1);) n/ v7 a) t! i, S! Z
}
6 m/ d7 |0 ?/ C
3 k2 c0 j6 @6 d( Z/ j! r1 f. W Y8 T) j1 r9 K- t# `/ `" ]" Q
}( X' W! {1 U9 \) M
$ D5 n1 V% _/ @$ o private void swarmSetp() {2 x k/ p) a5 k; W# r( G: @
list.addLast(new Agent(Id));7 u6 H# I! ` V1 K5 M
Id++;
+ |% @3 ~! q& m* u c q }
* l3 b5 G/ d4 i$ Y% C
* y' ?9 W: g- | e public Activity activateIn(Swarm context) {
\* l g/ n+ J. y super.activateIn(context);9 I1 n6 Z3 v+ g
schedule.activateIn(this);
; W/ j5 k8 F9 q return getActivity();7 M- G0 X* R5 K8 q) Y+ p( F- z
}
# R+ O8 V K* H2 j* M+ _, A& B! K+ s: E4 w+ M; J' b5 `
public static void main(String[] args) {! r# I) c0 \+ [+ E9 [$ Z" U5 f+ l( e Y
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! b2 n, ]2 v1 C+ g, t* N; G
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, S% }6 [5 o6 Y6 o, ` Q7 p/ ` swarms.buildObjects();( z/ {; U$ U, U
swarms.buildActions();2 @$ S( K! W2 V- k& t, ^
swarms.activateIn(null).run();
, l" S2 S7 o& ?( t# h* u+ m/ ]9 F$ T u }
) o0 H$ f7 ?& Y8 O' b. D8 ]2 C& R! e0 q$ q8 U
} |
|