|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 k( H" A* N* G& N; m8 m
7 ?) z( c/ x. p4 o# p8 A
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# k# T& V6 c% w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ u5 A: ~, {5 T+ a7 b9 X5 n; hswarm.SignatureNotFoundException. H5 f$ {- ]" s& d7 l
at swarm.Selector.<init>(Selector.java:76)* r# G3 `2 _% \# ]
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! m3 D& y. z+ \- W3 v# w at ActionGroupDemo.main(ActionGroupDemo.java:67)5 O( k) K9 K) c
8 C* K$ g8 H- ]4 W0 j2 f; L& ^7 Z1 K0 g; z
import swarm.objectbase.SwarmImpl;
' V9 [3 N6 [* M5 `& qimport swarm.objectbase.Swarm;2 p& s3 y5 ], g% ?$ N4 X$ U
import swarm.activity.ScheduleImpl;
2 ^) E2 t. t/ G/ E4 Mimport swarm.activity.Activity;7 Z$ x/ V, Y9 u7 M
import swarm.activity.ActionGroupImpl;
9 f) o' T& b6 E; {3 _import swarm.collections.ListImpl;
2 N2 g X6 h8 D zimport swarm.defobj.Zone;
3 I+ j4 _ i. oimport swarm.Globals;
8 ?) O! G" ~1 F! j" Dimport swarm.Selector;) X3 n& k/ h2 P$ Z0 [5 P* N' H
import swarm.activity.ActionGroup;
6 J# ?3 L& k- X$ @: o rclass Agent {
; u- q( ^ F8 A( R char id;
3 v6 h* d) k9 X t
# N) e/ Y9 i, J% @ ?3 P# R/ s Agent(char id) {
8 n% I7 O: ~3 p+ z- m8 A% \ this.id = id;
- P; o% Z- B( g- O: n( Y" n9 J }
& ^' U4 }3 U J3 m# g2 N! e& P, v) N
public void agentStep() {# J& j I2 t2 K2 K, |2 o
System.out.println(id + ":" + Globals.env.getCurrentTime());6 J' ]' d3 N4 l( U/ l: Z0 H2 \
}; ~" {9 y9 V0 e, v2 L9 a
}$ `0 u. \7 o3 o( T4 M
% \- {8 k, T, V
public class ActionGroupDemo extends SwarmImpl {# V* V* ?3 z/ S3 O t
ScheduleImpl schedule;
+ U2 C/ c" C# @+ O! g* e$ m( y ActionGroupImpl actionGroup;4 @/ u* m0 w l$ h6 S' z3 Z0 i
ListImpl list;0 t* G, j! l4 |: S- E) [, U
char Id = 'a';
# P1 m4 v; g- D* c0 V1 U
3 a% y- u& c3 O6 j- Z, e7 Y ActionGroupDemo(Zone aZone) {5 {- r' Z3 G& r( W
super(aZone);
$ D- O3 B, m7 ]% T4 x list = new ListImpl(aZone);
5 ], V. r& P. J; f0 |( |' H; o swarmSetp();. c+ B" o1 k3 J' {# C4 [4 H; c# H
actionGroup = new ActionGroupImpl(aZone);2 M( X; g$ ~$ p8 w5 Q$ ~' ]
schedule = new ScheduleImpl(aZone);8 {* n) s8 p- _ M8 x
try {
( @6 s4 T& J$ b5 {+ E% D9 P Selector agentSel = new Selector(Agent.class, "agentStep", false);( W3 D: h+ N5 F7 C) x! L" G4 l
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ r/ Q* o; F! ]4 l X
7 G# E8 ]! i3 E actionGroup.createActionForEach$message(list, agentSel);' \& z. z4 i- ^0 W8 ~; T
actionGroup.createActionTo$message(this, swarmSel);
' f! a+ S- y6 X) z: H& J' K* q schedule.at$createAction(0, actionGroup);
4 C w; o. \+ B& A0 ~8 n schedule.at$createAction(1, actionGroup);, |$ |8 X! z5 A$ v
schedule.at$createAction(2, actionGroup);
1 {9 E. U% ]! ]! Y0 X* S9 `
2 x: U* L# n$ N" [ } catch (Exception e) {
, R6 c; E- q" `! T" K3 h e.printStackTrace(System.err);
" J7 |6 b y2 z' o3 W& {$ R+ ] //System.out.println(e);
: N( X) H9 r" _7 G System.exit(1);
9 o G( d! k" e. l: Y9 @% k) { } M2 ~! W- f& R( f4 T
. ]' r6 K9 y) K( D' T9 j" F( Q& I9 y% _; D3 p6 a
}8 Z# J+ S$ o/ D: F
# W: f% ^& R9 X8 p! v$ T# P
private void swarmSetp() {
( E( V3 r) C6 ^; c$ q list.addLast(new Agent(Id));. U8 Y) I" C8 R' s1 ^9 |$ r
Id++;; d4 l8 C' A m4 y% n
}
+ [, ~& F! Z+ h3 [' z+ m: p+ L+ }
public Activity activateIn(Swarm context) {: w' h+ Z6 ~, k/ |' F
super.activateIn(context);
# v1 K0 i4 {8 G1 }8 h schedule.activateIn(this);9 a) g6 j9 H9 |% X# {
return getActivity();
6 s. [ ^; Q' x; m" k }* T/ t8 S- M, L0 Z: z- z
6 a$ ^4 k' n( D$ V! {' T public static void main(String[] args) {
: U8 i& w% K+ ^4 n Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* C. e7 I. J) s. ]4 o5 S
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( }3 c) [6 d X, k swarms.buildObjects();; y3 O. O0 \% g& d# w( j
swarms.buildActions();
1 w# @1 a7 a; [ swarms.activateIn(null).run();
^- @9 V. C+ v/ ^/ E4 `8 A/ M }
3 [; ]1 ?, _8 S( i; L" W1 x& N8 }& R. Y4 F& ~3 `" P
} |
|