|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 B. @/ u1 X) D k! S0 g9 v) C, z$ Y& |4 X3 S% E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ R/ ^2 Q; \ ?% y+ v) z2 i* r1 T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 z' @( c. ^, ?) l% c
swarm.SignatureNotFoundException+ X5 ?3 T- A: q. a
at swarm.Selector.<init>(Selector.java:76)
2 l) l9 k! P2 u. M( I at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 q( B, F! O8 j2 d5 Y6 ~( S6 b at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 K; P5 j5 u8 J+ b7 R! ^9 y) \( G0 ?7 i0 B
& m; F2 _: l" u. h& M3 f
import swarm.objectbase.SwarmImpl;
! B9 ^; j* x1 S+ ?6 kimport swarm.objectbase.Swarm;
. z$ j8 B3 H2 ~+ y6 himport swarm.activity.ScheduleImpl;/ k+ O, a) z/ Q( \4 B5 u/ I& [
import swarm.activity.Activity;
% Y# u+ a3 @3 K8 n( Nimport swarm.activity.ActionGroupImpl;
2 y, o6 U$ {/ A1 w q& I1 Y8 _import swarm.collections.ListImpl;0 M7 T, ?8 P. L
import swarm.defobj.Zone;
! l3 M% D ?% M5 Pimport swarm.Globals;
; W5 f# q r8 T; u7 A( Nimport swarm.Selector;
1 U8 a& f; W+ t3 x) |0 ~, ^" [# Nimport swarm.activity.ActionGroup; 1 @- ^; R m( u8 @" `
class Agent {! G) m9 M% s0 d2 f
char id;
2 b9 K/ Z+ ^$ \: P3 e! X# Y8 T% O, a9 C d2 b' [
Agent(char id) {
- g4 V1 u& C7 l: V7 H3 T this.id = id;
' c- r* a2 x: G+ }& g j7 a Y5 q }
) M' x8 A) l" q* w
( z' L" B0 J: r3 M; M* z6 j public void agentStep() {
: x& N1 c7 e& m System.out.println(id + ":" + Globals.env.getCurrentTime());
7 I2 f( t" }7 V( B: G# ? }- M/ d. A( a9 v8 P6 [
}( q/ m) \: H, i/ E* b' D
2 F/ A! `2 W$ f/ W! g: Spublic class ActionGroupDemo extends SwarmImpl {
! v' _: J8 K- T: b2 |0 }" C ScheduleImpl schedule;
% h6 Q- V- ^" v8 O5 m ActionGroupImpl actionGroup;4 e1 g! W p! l" f$ T
ListImpl list;0 O! e# Z9 k2 f$ W2 p3 l
char Id = 'a'; Z/ Z0 ~1 }& ^2 }7 z& l
1 o- f( U# f6 y ^% y( H- H
ActionGroupDemo(Zone aZone) {
: o% j( N& E7 h! S super(aZone);5 h% ]% j) N* I+ V2 C
list = new ListImpl(aZone);. b+ G3 v& L0 M
swarmSetp();+ P0 T! M( V# V* z- ]
actionGroup = new ActionGroupImpl(aZone);7 J# o1 l$ @- ~" }2 S- _& f
schedule = new ScheduleImpl(aZone);+ ~1 H" G/ m: R. D+ |4 Q
try {
7 {6 }! F& H8 m( ^" F$ e Selector agentSel = new Selector(Agent.class, "agentStep", false);" i$ Q0 U8 I/ [' }* ]% I% D
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) X0 ^6 l" g7 ^. H& z/ l5 k
: L, j: h: I$ `. ]- [ actionGroup.createActionForEach$message(list, agentSel);' r7 M2 A% I8 f* X" \2 F
actionGroup.createActionTo$message(this, swarmSel);
2 y- [' U; Z! M/ X" ? schedule.at$createAction(0, actionGroup);
6 ^( K1 ?/ H, d/ T* W schedule.at$createAction(1, actionGroup);* z( X# E# ]1 _) f
schedule.at$createAction(2, actionGroup);" m; M' g& ?1 A4 @* J
& P" S) U# c% E! u- n } catch (Exception e) {6 G6 K; Y9 O1 \1 {: z2 Y. z5 T/ c
e.printStackTrace(System.err);
$ e: R7 ~' P7 X9 _ //System.out.println(e);
9 Y1 j0 I2 L5 |5 G1 { F6 G! x" y$ W System.exit(1);/ T* o3 q8 z0 ]( L' z
}2 g# m! @$ D& t" J) m
# a, C& C0 \3 d8 `+ } u( }7 I+ n; b+ p/ ]" {1 @. S) b
}
4 T* w+ i1 C) Y8 P2 \: O/ H% f! j/ ^9 P7 S
private void swarmSetp() {/ P# s( T' I- o! H/ k& {. t# g3 ^
list.addLast(new Agent(Id));
( b' @. v- z9 A- t k; W Id++;
+ m \) U w% V1 T }! p6 z* p3 o1 }1 q6 c# _
. v Z2 b: Z* K. J/ Z4 A public Activity activateIn(Swarm context) {
9 |9 Z" B6 a( v. d) x super.activateIn(context);
) W& i; x: o7 `0 X+ F schedule.activateIn(this);* ?3 p4 y& ~# B7 [
return getActivity();
, O6 y+ A! p% c5 O0 _ }) I: ?* R) `0 j9 Y1 N/ b7 P
& @$ I$ i' \# D, m: t; E9 \
public static void main(String[] args) {8 O$ K+ t }5 h1 v9 J, M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. u+ k% H8 k; j Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 B3 J7 r" X$ ]' ] swarms.buildObjects();
1 \2 C& e# W, y* b swarms.buildActions();6 ]1 h! u& `4 {
swarms.activateIn(null).run();
7 t% Y, d+ d9 g: w% { }* U1 [2 }0 U: D, H
4 i4 h3 R8 ^/ v* l* z0 `} |
|