设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9097|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: a2 e2 s2 d2 Y( }
. Z2 o' |& A* t; S9 k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 `3 `" V: [* I& j) s. y7 x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. Q) \/ x: a/ j( O4 e
swarm.SignatureNotFoundException9 M1 S: c( B, Q! e( u
        at swarm.Selector.<init>(Selector.java:76)
+ w0 W: [3 z; {  X        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. h3 j  m8 @5 x9 S6 e        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 ?% u; g  k! |$ V

) K3 o6 |2 W7 n6 r. _3 d! w4 b- O9 f1 W, T8 U( Y
import swarm.objectbase.SwarmImpl;2 v" O8 Q- h5 j
import swarm.objectbase.Swarm;
& Y9 _$ y' ?" |7 D; b! j. Yimport swarm.activity.ScheduleImpl;
3 Y' \6 m4 x  E, |import swarm.activity.Activity;, [$ P6 w( f' g; t2 r1 N% \
import swarm.activity.ActionGroupImpl;
+ ]/ h2 C% u5 F/ Simport swarm.collections.ListImpl;- w/ z. W1 u  @
import swarm.defobj.Zone; # U) }% M0 j! S) Y  `$ y
import swarm.Globals;
+ ?7 {4 c0 S' y+ f8 n. Bimport swarm.Selector;
" C# q0 O* S& f6 N1 y3 Z, oimport swarm.activity.ActionGroup; 6 @  y! s, r7 A- z' Y
class Agent {
' H/ c7 X5 o6 K        char id;
0 C* B) U! r% U6 A+ z. j" K9 y0 l: i8 N+ f+ I
        Agent(char id) {
9 Y6 Q0 b1 a; O5 M1 M6 R5 j" ^9 d                this.id = id;. x) V4 ^8 x  [
        }
9 Q6 f: C* m' f) T) m; E7 B# M; Z9 X+ C5 i6 c7 h
        public void agentStep() {% s0 S& q6 E. A3 c2 g
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# r! u* f1 T! F( H; V$ k( o        }3 `9 `& a3 E4 H" s5 V0 X
}
+ Z  {, k6 x! D5 r3 y
# A9 k! Q) D/ D4 T7 O  E. x5 wpublic class ActionGroupDemo extends SwarmImpl {  g4 f$ x9 K$ s
        ScheduleImpl schedule;1 R6 ^6 Z3 D' U' ^7 D
        ActionGroupImpl actionGroup;
* M- j# }$ v' Z. Y" }$ e. a8 H0 b        ListImpl list;
+ j* t; G3 I8 {- ^& S        char Id = 'a';; A5 H8 x7 E* |, F

1 o) K8 I$ `, _- Z* x/ N        ActionGroupDemo(Zone aZone) {
% S$ d) E( ^2 G( h6 {" M8 o8 P                super(aZone);
- K# ^' a3 x$ d7 H& M& K                list = new ListImpl(aZone);
* N- H+ B: m. m1 U" V                swarmSetp();
3 `* `/ I  G' K" z+ b8 }8 K$ }3 h                actionGroup = new ActionGroupImpl(aZone);) |; M: ~6 `  C8 ]$ [
                schedule = new ScheduleImpl(aZone);1 s% c8 M, j1 m3 _
                try {+ ^# |; S3 [9 \1 r4 F9 s  `; U" i- v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. l, a6 H$ X5 }) Q% b) H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 f/ F+ n9 z; l! x                        * M  ]1 [+ l# X& [9 j! H
                        actionGroup.createActionForEach$message(list, agentSel);8 j9 y% @& M: C' P! H" h/ i
                        actionGroup.createActionTo$message(this, swarmSel);! ^( \' L% M; r) s. S
                        schedule.at$createAction(0, actionGroup);
( j3 M6 R( {* \" `1 h% O7 x' s                        schedule.at$createAction(1, actionGroup);
, h) K( q- G3 {% L& H                        schedule.at$createAction(2, actionGroup);& I# J* s2 y9 i+ b6 Q$ G; C7 C9 ?4 E: T

$ r' _5 z2 Q* q& N                } catch (Exception e) {& B2 m3 P4 c' t6 a# `* M- X3 L
                        e.printStackTrace(System.err);8 P" X, o4 c9 H7 ?4 m* Z6 p5 U, u7 z
                        //System.out.println(e);
; ]/ ^& K) S. @: j" i                        System.exit(1);8 E& m9 C  \  ^" a* m& F
                }( p) t4 C! J- d* @$ u, w. ~
; `# W8 o9 _& }9 b' Y
+ z0 j4 t9 ], L
        }0 P' k6 r7 v8 s

: c, U$ s; v5 f6 \9 X- v        private void swarmSetp() {
  o: c! R, D7 C4 t                list.addLast(new Agent(Id));* u+ b1 Q6 J0 `) @, q% ~3 K
                Id++;5 h# |. ?0 B, h1 ]0 \; l" n
        }
1 H! I0 K2 `  i2 q9 J5 k  d# u# x3 |# F) ^
        public Activity activateIn(Swarm context) {
) _/ d7 F, M6 u' a1 q% j* z) j7 N# j/ X                super.activateIn(context);9 P8 V+ n. `: o( `/ y% X: i; ~
                schedule.activateIn(this);0 n3 F* `! c* }: c5 P: v* y
                return getActivity();
5 n* e+ J$ A# D! _, t1 @  m        }
0 ?1 q8 x5 N- a# V  t: U2 o
% V/ `; G1 f1 L+ Q, Q        public static void main(String[] args) {% {- G" K0 f( _" ~8 |- \' c7 o
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# J# i4 l( Y4 r% Q' Y; _
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# }5 n0 J$ {6 a5 n, u
                swarms.buildObjects();
7 S+ l' t7 P* L5 j. ]                swarms.buildActions();
% S+ h. {! z) |3 C4 v$ A                swarms.activateIn(null).run();
9 l* \9 l8 e# ?0 i$ x        }
( n' D- l1 z7 t$ w% Z7 z5 g- o+ C8 k% r) H4 h. Z  m6 a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-1 08:23 , Processed in 0.014682 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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