设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7278|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 s& Y2 d) K2 g' E6 x; C& K. b
- m. v7 K4 s, l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 e& d1 \% Y/ A* F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. v  v/ {1 V$ u) r3 D. Y  fswarm.SignatureNotFoundException
" m& f! `% ]0 o5 M        at swarm.Selector.<init>(Selector.java:76)
3 s0 s7 U) ^; b5 f6 _- \- U: Z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ ]" h) v" G" @' z) l: B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( L' a* G7 p$ j6 U6 K- Z+ L4 [0 U- d6 d5 a
" U: |* O8 K' w; ~  z
import swarm.objectbase.SwarmImpl;
/ S+ O& {: d; @7 b3 F$ i; zimport swarm.objectbase.Swarm;
1 B8 X! u, X$ H: q! qimport swarm.activity.ScheduleImpl;
% U$ z" ^$ m3 A% |, i& K% cimport swarm.activity.Activity;
; l( a( A# E; `% h' s* Kimport swarm.activity.ActionGroupImpl;# x! f+ w# H5 w
import swarm.collections.ListImpl;: D& f% T8 V- T: ?) I# }6 u1 j
import swarm.defobj.Zone;
) j2 P4 p9 l4 I: `# I  limport swarm.Globals;  \+ C0 \' l8 d( |% \  F  Q
import swarm.Selector;" x1 b% T( u  H
import swarm.activity.ActionGroup;
/ t* j$ f7 f8 ?/ Dclass Agent {
6 w+ u; [3 ]* H+ A- t        char id;
0 @9 d/ E$ m, D: l4 \8 Q- Q, M$ r2 t* l& ~6 k/ H2 C' i+ l; }- z
        Agent(char id) {! l' X3 ~$ Y4 a3 X5 h  R+ F" c
                this.id = id;, A0 Z3 L0 N0 u6 c. g& J$ |2 l
        }" k6 I2 r. x+ t8 H% i/ J6 w
6 D: }3 C0 q, [. ]
        public void agentStep() {- t: X2 R4 M! T+ o6 X) X+ M
                System.out.println(id + ":" + Globals.env.getCurrentTime());9 p9 k: N$ [& p4 O
        }" f% [% p% r. z* T. v
}
. ]* C$ Z4 y1 s" B# N
! Q( _9 T2 P1 c% ]9 K% l9 Rpublic class ActionGroupDemo extends SwarmImpl {; {% b, W- j, J' S3 F; W
        ScheduleImpl schedule;
+ }* P* J1 p8 e9 f- Z        ActionGroupImpl actionGroup;- y7 K  Q; k3 t0 n9 ?8 d2 E3 I. H( F) m
        ListImpl list;1 m1 L9 m+ O3 k3 T: a
        char Id = 'a';% }- g) v- ~1 d; f
) d! c8 h3 r$ W8 e( B0 I
        ActionGroupDemo(Zone aZone) {; U. ?9 l0 `! ~  n
                super(aZone);
. ^7 b. ?6 g6 d% u& w                list = new ListImpl(aZone);
; Q0 X  z0 M& M4 [, O; `                swarmSetp();
  {) G' o& u& k) H" W                actionGroup = new ActionGroupImpl(aZone);
7 ]5 ^. b5 A6 R, x; G$ B                schedule = new ScheduleImpl(aZone);# t4 N* n3 ]6 |: {, r
                try {
1 W3 [9 ^4 g( q* C% }4 T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# }. F' `* _; u3 L! z7 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: Y0 e/ ?7 R/ H: s                        
; ~) [; ~8 }+ b1 M$ \. M                        actionGroup.createActionForEach$message(list, agentSel);( t$ T# x* O* a8 P8 b0 x# b8 s* w
                        actionGroup.createActionTo$message(this, swarmSel);
; [" M/ |5 }. M- i5 h" g                        schedule.at$createAction(0, actionGroup);
8 [  w; c( k! i0 y/ a                        schedule.at$createAction(1, actionGroup);
9 G, A1 K% P+ f9 ]6 I7 R  w                        schedule.at$createAction(2, actionGroup);: r. Z( c* t* d) @
+ E  q' w: n* N* p1 X. w8 I8 Z
                } catch (Exception e) {$ {* W) t" T* ?& l% G
                        e.printStackTrace(System.err);  Q9 p& W) J  h# v7 N0 J7 P
                        //System.out.println(e);7 k& V& w. |; V3 ]/ B
                        System.exit(1);4 _5 o2 U* A) p
                }
$ v+ y. w: a( x6 o1 N3 b
* _: `9 \2 V! }  d* V8 y! I+ \  C: @
5 r4 P3 `% L  N/ i        }
1 m: O/ `5 k# r3 T7 [, W5 q2 s  C+ z3 W- V1 Y0 D
        private void swarmSetp() {
& S* a# v8 k- @: V# X                list.addLast(new Agent(Id));4 s; Y% O  \. }7 j0 B
                Id++;
" S1 C+ s" x6 o6 s/ N        }6 B0 H2 V/ C% T2 F" a

* i! z% X" k* e/ ^# p. Q        public Activity activateIn(Swarm context) {
) n  L2 F5 A% {; |! K, L4 l                super.activateIn(context);
& Q+ l% R+ E. f. [' q; h                schedule.activateIn(this);3 x' O3 [# T; Y/ I% r% u6 ?9 \2 d0 D
                return getActivity();6 c) p' Z1 q3 t+ T
        }3 P# k$ k3 Z- @4 ^; f6 b& U

) c9 d0 M% c: \* \6 v        public static void main(String[] args) {, V" c, G3 ]& D6 E' `! {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' G: `: q0 y. |' c# \4 ^6 k                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 T& U. n( _1 G5 k- j1 v                swarms.buildObjects();; z8 m+ W) k9 v( q6 I# b
                swarms.buildActions();
7 f/ i- F7 o7 z                swarms.activateIn(null).run();! ?( V3 W6 N6 v" [6 g* {4 n# c
        }; C4 @9 R$ W* P; `( P

* S  i* C) B* ]% c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-25 04:53 , Processed in 0.023397 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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