|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 `: `6 \; @0 _" R" ^
{ N. F& l n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% f+ n6 m" B- g n- a9 u" e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ u2 A6 G0 n0 Dswarm.SignatureNotFoundException
, C7 m1 E+ u. @6 _ at swarm.Selector.<init>(Selector.java:76)1 s- J6 y& ~0 y5 @: H
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# ]8 Y: ~; O/ L v
at ActionGroupDemo.main(ActionGroupDemo.java:67), A+ ~% U J8 B A' e3 X9 l
# B) G, p5 g6 B9 b
" z" ?9 o1 G; {0 ~# |import swarm.objectbase.SwarmImpl;
9 G* b) k4 G% s8 ?% V* R& Kimport swarm.objectbase.Swarm;
! d0 E" K( [9 ]import swarm.activity.ScheduleImpl;) T0 d( n; t1 `7 [" Q
import swarm.activity.Activity;
3 ~' b$ j. W/ f8 mimport swarm.activity.ActionGroupImpl;: m3 @" ]1 i5 D4 M
import swarm.collections.ListImpl;# I5 _/ ?% `% Z
import swarm.defobj.Zone;
6 b6 U, j7 X a, f5 X0 j6 }* b+ m6 h' Gimport swarm.Globals;
. ~# H- H4 W) f! l4 q/ ?import swarm.Selector;
. g& A8 v$ Q( Uimport swarm.activity.ActionGroup; # A1 v. x5 k' `) e s5 W
class Agent {
" c% X; A+ b! w$ g2 |; C char id;6 y- r. ^4 G* q. v J
$ J. b* u' F" N; i
Agent(char id) {6 k9 h: P$ u b: h) s
this.id = id;- A; g' ^1 s% ]; t- D, t) K
}% u/ k1 L- D1 w/ k
P) ^) q0 I9 ?% N* c' I8 U" A
public void agentStep() {# W- i6 I, s5 m0 l
System.out.println(id + ":" + Globals.env.getCurrentTime());, P$ z: p6 T( _0 O/ [$ W6 a
}
* L( |; t. H3 ?5 }$ ^* ]3 Y}. i# {# K. d; C1 W" L
5 I/ C% E, y4 F4 u
public class ActionGroupDemo extends SwarmImpl {
9 S1 ]+ P' d+ |9 p5 ] _( ~ ScheduleImpl schedule;1 b, \9 |$ l. }. d: b
ActionGroupImpl actionGroup;
* T i& X5 N9 z! F ListImpl list;# d% Y- w7 O3 @* t* X- b
char Id = 'a';, b: ?/ r3 X. Y2 R2 j' N# K
( P6 a+ s% o! L8 }7 U7 y ActionGroupDemo(Zone aZone) {
J8 M7 ?& c5 u super(aZone);
5 I( c3 X( @, \+ z4 X( O$ a list = new ListImpl(aZone);9 r/ P7 S0 T# H: x2 x, R0 g# D
swarmSetp();& |0 [2 y4 g& t J; p- \3 Q/ t6 q
actionGroup = new ActionGroupImpl(aZone);* j4 t. n2 F' ]+ p' O
schedule = new ScheduleImpl(aZone);. \* S+ z9 |1 a& a8 \' z+ U
try {
: E. E/ S$ q2 @6 {( c2 [- A Selector agentSel = new Selector(Agent.class, "agentStep", false);
: S' T" x& f4 l: Z% z Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" U% M9 A3 h3 s$ `+ B- N
7 Y: C9 Z9 J3 p3 b actionGroup.createActionForEach$message(list, agentSel);, h& g* {. t9 T5 @
actionGroup.createActionTo$message(this, swarmSel);3 o" H5 e& m+ m3 B) n. |1 {( a, m
schedule.at$createAction(0, actionGroup);6 `. i4 x( g) ]+ o1 Z
schedule.at$createAction(1, actionGroup);
; H3 D0 V/ v: { schedule.at$createAction(2, actionGroup);. j/ \8 F! u% z
, @4 Y. ?! |3 e2 e j2 L
} catch (Exception e) {8 ~" ~- O/ g- h1 ~/ d5 h* ]# i
e.printStackTrace(System.err);4 |4 ]. L9 M: v+ K
//System.out.println(e);3 i1 Z! C5 K. J- i0 |5 x
System.exit(1);# a$ y! U4 I4 K
}
5 h' \/ e9 \+ a- C0 m! R8 L# g4 |
8 `. N, b- @0 s4 ]# ?" D; v4 R" M5 v8 J5 \
}, ]% z. M% U% G$ Y
* X R9 N6 f: K private void swarmSetp() {/ H( m! x6 C2 n
list.addLast(new Agent(Id));
6 w0 @, g3 f F! ^# ^6 `' U2 a5 ~ Id++;) ^' }1 o$ ^+ j
}
3 Y8 x) d A* V
1 P; t) d6 W& |7 J4 A public Activity activateIn(Swarm context) {% S @/ m, {7 W# ]0 R3 K
super.activateIn(context);
; ?) V# G8 Y/ f; w$ Z schedule.activateIn(this);
% ]; R# d% p) ]( k return getActivity();0 z6 ?; x, j* L
}6 ]' T- P/ ?7 y% }' R
8 U! i, |; X% q& Y public static void main(String[] args) {
" k9 Y, i6 u3 H. t3 ]/ D0 ] Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- K8 y* M9 A$ { ]! J% P: O Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 N" m* Y) W9 {; T5 L
swarms.buildObjects();6 P; B$ ]3 {" E! k9 @+ S# K7 C6 o
swarms.buildActions();7 |- r1 ^( c- o6 ~
swarms.activateIn(null).run();/ O c5 M( V7 f+ t. J# J
}3 v+ o( s$ I7 W$ X# v( j; C3 C
+ I2 ], x: S0 t; g
} |
|