设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8449|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 ?, Y3 r% S+ V  b6 z
" d+ Y9 ?. |. R# }0 _  H4 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) h4 \, q1 O+ y* z" [: j; ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., x; @: {' ?2 I& n/ ^& v' e: `
swarm.SignatureNotFoundException8 R. }3 H, e7 s# s" q$ ^3 J
        at swarm.Selector.<init>(Selector.java:76)
. d# @/ H0 I% W! f6 u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& i5 y& M" a8 G8 d        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 ^5 Z0 l+ f( h  K4 q

4 w( O- f$ S$ ?! |7 n) e; ~4 u( k, D
import swarm.objectbase.SwarmImpl;( N1 `( p& r6 J- v
import swarm.objectbase.Swarm;
7 ^% N/ \& `  s  f6 ]0 himport swarm.activity.ScheduleImpl;
: O( q  I9 g% `5 }  `import swarm.activity.Activity;
6 t9 k: a8 t* R! {, }* Fimport swarm.activity.ActionGroupImpl;3 c5 H; h0 q) G/ G9 N0 q
import swarm.collections.ListImpl;
$ `9 f$ n# V: Uimport swarm.defobj.Zone; " p  K  y5 f% H* ^
import swarm.Globals;
+ \! |1 v9 u) y( ?' c0 `import swarm.Selector;
  d- \8 U) C6 ~" u0 himport swarm.activity.ActionGroup; % D/ R; L, @' ]) ^- _1 @' i/ j
class Agent {
% L  {% e& r5 x# ?0 W        char id;
  V2 ?6 W4 O, W# I! N0 X) ?4 z1 D4 p$ N2 U
        Agent(char id) {
( |* Q; c2 \7 I/ a- d                this.id = id;1 \4 _( C& E: L% j2 }7 I5 T& Q
        }4 ~* E& J$ `* S4 x/ ]7 S

1 l+ B/ F; B) {% G. d0 t6 y        public void agentStep() {
7 Y5 `" f+ n, R+ s6 ]" Y& b                System.out.println(id + ":" + Globals.env.getCurrentTime());
. e7 e( _, @/ K% T        }
/ J* T" G2 S9 E& k4 r; O8 {}
) D3 w4 f+ b& d- B: c9 p6 c2 \4 [5 B. ~! u* N$ n2 j0 P0 B$ u
public class ActionGroupDemo extends SwarmImpl {2 P( R0 a+ W# s" p! D
        ScheduleImpl schedule;* n/ l0 {% g. h; z/ j) p/ V* g
        ActionGroupImpl actionGroup;
3 L: a/ \6 P' U0 m1 y6 ?        ListImpl list;
1 _( H4 j* W. a' f. q6 ^        char Id = 'a';
: n. `2 A1 z" @/ |: C6 {
7 t% A$ b' h; s6 X& v        ActionGroupDemo(Zone aZone) {) S& d. o8 [1 J1 s  ~/ u
                super(aZone);
# k& K& h* u* ~" X1 P                list = new ListImpl(aZone);
6 [3 i1 P& e8 |6 h                swarmSetp();
* b4 @. f- Y/ n4 A                actionGroup = new ActionGroupImpl(aZone);
% Q  Q' \3 Z6 S6 ]  n: e                schedule = new ScheduleImpl(aZone);: C8 x; Q! M. @6 Z* G: A5 n7 O# y
                try {; @( V& U4 G3 i0 x
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' n8 y) u  R8 B5 k! k# p: [
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 Y/ i5 r9 }$ e+ d! I+ H2 c8 ?9 w                        1 K0 h) F* g8 _% I& m: l
                        actionGroup.createActionForEach$message(list, agentSel);
4 l) J4 t. D: f- {, w# g  e                        actionGroup.createActionTo$message(this, swarmSel);  c; {8 O2 Z9 n" c6 v  A) a
                        schedule.at$createAction(0, actionGroup);
2 S0 O! w! \: p2 Z/ l" L                        schedule.at$createAction(1, actionGroup);
- L  h; W5 J& h' W, f0 y( P3 [2 f9 Y                        schedule.at$createAction(2, actionGroup);  u5 _5 N2 s, E: R) u$ k
: N9 A! R6 H5 [3 u  R+ n% v
                } catch (Exception e) {. @! I! C/ B1 e6 ]4 H" w) R8 F/ C8 x
                        e.printStackTrace(System.err);& Q$ D( ~5 S- _' J
                        //System.out.println(e);- M' p- [4 K; G2 l. ?- B- Y
                        System.exit(1);+ f) Y  d. a! V9 E
                }
1 Y; Z1 s7 k# D! H- f
6 e) K- x! q- V
( ]  k$ O( o( M7 c5 g  Z8 e        }4 r/ U6 K7 z2 \4 }. t

0 W1 O: w7 I! \* E" N( S        private void swarmSetp() {
( Z8 _7 V8 Z& y9 w                list.addLast(new Agent(Id));1 P% i5 H2 ^! j
                Id++;9 G  |; i$ u/ ^) ^* L2 ?( K1 S
        }! ]. i0 D0 w. H2 G) x
; H% `5 z, q4 @% d9 }( u5 P
        public Activity activateIn(Swarm context) {
: P" I* t8 W$ ^                super.activateIn(context);
2 g' [/ ^7 `0 g' H: }                schedule.activateIn(this);- U" A7 |5 X( v2 B
                return getActivity();! R" U  j% X* L
        }
% @0 z. a& J& ?. Q0 t
1 O9 {1 c1 i/ g9 y8 I. m% Z  z        public static void main(String[] args) {
. o. d% `! C* M: n0 @5 a/ P! [                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, W, X( @& l# ?& P. A: |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ L& x4 c& k- _3 l2 T
                swarms.buildObjects();
7 c: \# a, u0 Y4 J                swarms.buildActions();
: F+ T) M1 `' ]3 @. u" d                swarms.activateIn(null).run();8 F8 N& `; B+ @$ A% Q  M7 t
        }
) S. M6 ^9 ~1 M+ [8 @$ }$ _* U+ l4 u, T: P) G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-12 14:13 , Processed in 0.014689 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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