|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 |# d9 _1 v' `+ J/ h5 U9 @7 ]2 A, M
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' f2 e- p e' t( ]0 f9 q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& T* D0 {8 N* R7 ]) V% R
swarm.SignatureNotFoundException8 ^1 Y8 x4 `% H
at swarm.Selector.<init>(Selector.java:76)
& y: s6 I# E6 X" o+ ]' r! K at ActionGroupDemo.<init>(ActionGroupDemo.java:37) n/ E& m0 S9 I1 ?+ m: F
at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 @& u; |. U$ ~# r; V5 g
- }* ^! d+ m( x! ]% E7 m# l" a% E2 z1 E& H4 h# @
import swarm.objectbase.SwarmImpl;
2 f+ l, n( l4 x3 mimport swarm.objectbase.Swarm;
% p/ B! R; i" `. L8 T7 Fimport swarm.activity.ScheduleImpl;
9 k# p# A' M, Eimport swarm.activity.Activity;; H6 r1 C- H( z# C/ |
import swarm.activity.ActionGroupImpl; I* X8 q: r2 C* V2 K4 q p4 N* O6 B
import swarm.collections.ListImpl;
+ V5 i" W% r2 U1 ]: Kimport swarm.defobj.Zone;
( d" I( } B$ s+ a qimport swarm.Globals;
1 E. n+ F8 Y5 F) D3 pimport swarm.Selector;3 j# ?! A* A( y2 N! I. A# t
import swarm.activity.ActionGroup;
7 _ U' x) ]; H* w2 t7 p7 A% Lclass Agent {
0 y: M0 H0 { o2 v {( ? char id;
, ]' R0 K/ c- P. e; s8 A4 K
, [* r1 @: H/ P% i Agent(char id) {
+ z0 B) a2 G j* w2 M' S7 n this.id = id;) a0 v3 P" c8 j! o% s# V! [) R& T. E
}( |( E g0 E; l5 c9 h/ g4 G% c# Z
- v' e6 B; A2 q; b! d5 y
public void agentStep() {
4 Z2 p B u" z" q. X* R System.out.println(id + ":" + Globals.env.getCurrentTime());
: {5 G) g( I% o: m% @! o% d }
) n. n. s& f" ~; C% _}
- q7 q' n& E; R0 N# f' [$ A4 ?1 V' n5 D$ Y1 h% [# k" K
public class ActionGroupDemo extends SwarmImpl {
9 W5 m" ]0 l. c0 z4 E ScheduleImpl schedule;( l: ^2 I- L! @5 E# K* t# l$ r* V% f
ActionGroupImpl actionGroup;
/ E- `& r5 L* L- u/ V$ | ListImpl list;2 ^; w3 J* N8 [ c5 Y# E. r' w
char Id = 'a';$ m8 u9 | Z+ f2 }
8 N2 A3 v$ o9 }0 k F" o5 [ ActionGroupDemo(Zone aZone) {
7 U8 F0 ~: f' |8 e/ k$ E super(aZone);
; p# v0 M4 r$ U8 v5 L) N$ ] list = new ListImpl(aZone);
. O ?% q/ K$ H t; E swarmSetp();
" }% ` ~& b7 u; C actionGroup = new ActionGroupImpl(aZone);" k1 ?1 H4 M+ H( ]6 U- s
schedule = new ScheduleImpl(aZone);
7 H$ G4 a5 v/ H% N. }1 |8 h3 u# S try {( k/ V" N5 {7 {- A
Selector agentSel = new Selector(Agent.class, "agentStep", false);7 g; R- s1 e; f! L% H
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ e6 J r, x% p7 M ( ?) A5 { l9 J* |5 I
actionGroup.createActionForEach$message(list, agentSel);9 b# }0 n1 I% q- e0 A
actionGroup.createActionTo$message(this, swarmSel);
' Z/ B% w7 i4 H, E4 S3 S3 ? schedule.at$createAction(0, actionGroup);
c" s! G: g* w* n2 q! w1 j schedule.at$createAction(1, actionGroup);
+ K1 G$ C# M4 u" U3 a9 a; b schedule.at$createAction(2, actionGroup);5 h3 v9 T& X/ y* L: Z7 x+ C
s7 ~* ~; n- `, I% _1 s. H } catch (Exception e) {
6 F& r8 O+ L& J1 {4 E5 @ e.printStackTrace(System.err);
% M s B+ ?9 d! _8 S8 f7 D& J# ?3 x- } //System.out.println(e);: `7 D* I% | E2 s$ S( ?0 T
System.exit(1);
$ j+ E. U, c+ ]3 X. P" J2 X1 |% X }
0 X: K5 J4 k z
R r2 C2 q, N/ z( w
: a- S5 }# |* h+ [ }
0 Q9 i- n( {7 e: ^& c
* u- {9 Y$ o3 ~' y3 l6 k private void swarmSetp() {3 X/ a. u/ |1 `5 ]0 C
list.addLast(new Agent(Id));
" g4 Q( d9 B, \! V( X+ F7 w6 e' E% d Id++;
, i8 B" K" D( F/ q! V }
8 I' P8 v! o" _: n3 o; v5 g M' r# [3 R2 g( B( f0 Y; }3 m
public Activity activateIn(Swarm context) {( a; k6 K* k3 q$ A. P3 Z- H a
super.activateIn(context);/ M0 R/ H* [) i! e
schedule.activateIn(this);, i! s1 |. V( F! I& B5 A
return getActivity();0 s& } v3 j5 G) I: @4 U/ D7 X
}3 V! o. U M$ X3 x- C( |: X4 n! O
! y3 K0 k# [7 \7 r9 `9 E
public static void main(String[] args) {
! R" @4 s1 p9 C, c% V1 v5 e Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' w" Q. p: p" B6 |. N3 {0 H Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; G4 b8 g; l5 a) |4 @+ t swarms.buildObjects();
" z/ c( e$ |' Q- q$ t4 ^) r swarms.buildActions();2 B' L" x; L8 C% ], l
swarms.activateIn(null).run();+ r. `# v( S% h" N' F) }# N7 ~& j
}+ D U8 o I% r) V+ k2 V9 j
3 b; @; Y3 i! D( t+ x5 T
} |
|