设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5978|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , ?* w3 i, F* y" F, ~, b

. x1 \" z; G# d  g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' d- p2 k4 E( e/ a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, f1 f: i4 |1 @! ?& cswarm.SignatureNotFoundException
0 Y+ h" s: o# u. `3 S7 G        at swarm.Selector.<init>(Selector.java:76). m* W! G# j, w3 K  z! B# a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); n) ?! h( v, ?% `6 k$ t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' Z5 }( y. i& v4 @2 Q2 O$ n# k- Q- Z/ v* u5 Z( z7 P
! ^+ V1 z8 a7 ?, v2 V* Q) s
import swarm.objectbase.SwarmImpl;
! y. g8 e* ]4 i3 g, Q+ }import swarm.objectbase.Swarm;
) t8 G9 _3 N! J! X! {5 x3 pimport swarm.activity.ScheduleImpl;
; {4 X. Q+ o" h/ m3 zimport swarm.activity.Activity;" ^% E$ I  D* i; W- V6 H7 N- B9 X
import swarm.activity.ActionGroupImpl;- M& f# k1 ~6 m7 Z' e, N7 V
import swarm.collections.ListImpl;2 @9 k) _9 |0 x1 a
import swarm.defobj.Zone;
  z5 F, [9 ]3 E4 x% i. `. vimport swarm.Globals;' O5 g, s3 b4 \+ ^1 s, u2 f/ I1 e' n! |
import swarm.Selector;
# r1 L; r0 [) `( }; d4 ~1 w5 zimport swarm.activity.ActionGroup; ) s5 i! s3 T% z, C7 N
class Agent {
5 x! m+ P. b4 o% H8 g  q2 Z" O        char id;
/ |2 B# P4 F( C# Y9 e( Q+ f# y. S7 k7 S$ H2 n7 l* N
        Agent(char id) {
* m6 s. W7 e- i  n4 P  L                this.id = id;& _  I3 e* ?- @5 |) V: b$ M3 g! S
        }( i9 C8 k! ^$ x$ h5 |2 Q7 b! r; R! x

; W3 j! q$ Z" y5 i! w        public void agentStep() {
! ^1 ^2 t: \! L- v; G4 K* u                System.out.println(id + ":" + Globals.env.getCurrentTime());+ m# A- H' M  @" L; ?
        }
8 |2 S9 A: F* x6 C}
/ k2 R5 z* Q2 N! L& i# n" I9 z$ R6 }$ U% H
public class ActionGroupDemo extends SwarmImpl {
! l* n" H( ]* J        ScheduleImpl schedule;
* w+ ]0 [# g+ P2 ^. }; C: L; {+ \* n        ActionGroupImpl actionGroup;3 }. j/ ]  n4 d& {4 [" R3 J9 ^4 d
        ListImpl list;
1 n/ K" j% ]$ Z/ b- U        char Id = 'a';! B5 U5 y' @6 J. _

. S4 {! ?: k. k& Q        ActionGroupDemo(Zone aZone) {9 u* j. D/ ^( L9 T
                super(aZone);
$ a" i+ y- w; j/ j0 h/ l/ |                list = new ListImpl(aZone);
; J8 w8 ?' `0 K1 W+ X                swarmSetp();
2 }/ D; ]: C  i                actionGroup = new ActionGroupImpl(aZone);. V7 x: L; S+ L, Q( T& U9 Y+ a
                schedule = new ScheduleImpl(aZone);" {, Y& X  `+ C# W8 W5 q2 R
                try {3 ~& V$ [# m7 O+ f5 o9 P5 [
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) s: C) c4 [+ V; t; I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ v0 S) f' q, T1 I0 x3 D8 |% a
                        & y) t, k8 p# M3 N, W  W
                        actionGroup.createActionForEach$message(list, agentSel);
+ S7 T' ^0 h) c4 y6 N+ C' O! Y                        actionGroup.createActionTo$message(this, swarmSel);0 q1 Z+ _& }  o. |4 @/ m
                        schedule.at$createAction(0, actionGroup);
* |7 M$ D' V8 A1 u- D                        schedule.at$createAction(1, actionGroup);* E1 H, ^+ E$ j0 E) r1 ]) z
                        schedule.at$createAction(2, actionGroup);6 r. \- i0 y8 w- l( t

) z' p$ z5 {/ E$ Z8 n4 i                } catch (Exception e) {
: z* q( ~% _& W1 T7 j& m, V                        e.printStackTrace(System.err);
' a% D1 C2 I$ d+ |# d5 Z$ |                        //System.out.println(e);0 b9 Z$ o8 K# N0 u  |2 l) t
                        System.exit(1);; _8 _/ ~, R: o% h5 c
                }
  o( D5 j- R  T* F, F, f
  K/ r7 p3 o% T: [. H9 v8 F& X9 `# |+ {  J9 ~' `  P; F. n
        }: u, }) v  t7 m% T( z/ P

6 Q4 k* D* z0 l, b8 D  O2 o        private void swarmSetp() {
! N( t. M: B" T- ~! r  U) g                list.addLast(new Agent(Id));
& X0 P& G4 V. b2 V$ S# a3 D1 q                Id++;) K& ^( s& t: P3 a% ?6 I8 c
        }* e# ~" v# H1 P, {# t* T

4 K  l' i5 {+ ~+ R. q1 a- l9 v        public Activity activateIn(Swarm context) {4 a, n6 S  z2 W1 g
                super.activateIn(context);( e6 f5 n% j8 y% W+ j% y
                schedule.activateIn(this);. l$ n, Q8 U; l& E
                return getActivity();
, D2 x6 r" y9 k2 e8 D        }
9 p" d* [, [5 I' N; h; V3 Z' ^& e5 c& ?  o
        public static void main(String[] args) {- P4 z$ ]9 Q9 X+ ~" \6 d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, w" [0 T! r' ~  D8 p5 `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" i! \1 U/ B0 Y" M) O- @
                swarms.buildObjects();
- v2 B( p% W2 _+ y# e6 w6 {' h                swarms.buildActions();: c$ p7 b- I1 K" k8 J( k
                swarms.activateIn(null).run();' r* Y4 A% B+ C! ]
        }
3 f  g2 F" o3 x/ d$ f
' e& A. d/ p0 Q4 w; V4 y* T}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-1-12 21:00 , Processed in 0.027302 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表