设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9010|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; t3 S6 p  J$ y
' V6 d  R8 q2 [) O$ H( |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) Y  P1 }) Y7 r! o4 s3 i! o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ u2 \* D) o: z1 A/ k( dswarm.SignatureNotFoundException
3 p  A- [5 z. ], q  Y        at swarm.Selector.<init>(Selector.java:76)' l$ B. r0 n4 _7 {
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 o9 o: V! J+ |. q0 O6 I
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 I. m3 y' l! [; @% y+ x
+ D- T* U7 {$ R5 `1 Y8 ~6 y3 {# m# L6 |5 m* F# U1 r
import swarm.objectbase.SwarmImpl;
$ U/ `0 p1 r* W  @import swarm.objectbase.Swarm;
  `) G& \# K! {/ K9 f2 t. _% |import swarm.activity.ScheduleImpl;  E* B  T# i4 d' O3 Z9 s5 M3 m% K# I
import swarm.activity.Activity;! {5 a" W' y$ j/ g
import swarm.activity.ActionGroupImpl;$ n/ ~1 g6 y$ p$ ^/ N% `$ J5 P
import swarm.collections.ListImpl;8 P+ e/ s3 m: ?$ A
import swarm.defobj.Zone; 0 h2 l! q; M0 [7 {& a' }* ?( g+ k
import swarm.Globals;" ^, i4 R5 S& g0 Q4 p/ E+ {
import swarm.Selector;5 b  k# I: `7 {$ X2 {' c
import swarm.activity.ActionGroup;
1 A$ Y( R, n+ `" c+ Z9 S1 t8 Tclass Agent {
9 F" H. I2 ]; Y: T3 g. c" o1 Q        char id;
, D9 T* `1 ?8 M
0 @' j  C! S( c' I1 ^! g) Z        Agent(char id) {
7 H- S) G% w$ ]! {! A% K, Q2 k: j                this.id = id;
$ {/ m$ P% p8 g: ^2 _# C: }        }* ]9 o0 ]  I- a2 }

, q" ~; ?' L+ r3 G8 y        public void agentStep() {
  b- z% g( @7 ]8 w5 T0 u6 ~# Y) F                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 @2 K+ o& [. B/ N: Y, C- y        }
- b4 `+ L$ _9 i1 r6 k}8 `* q7 s3 M6 ^6 [' X/ x5 @1 J/ Y) ~' Z" r

8 g, h5 q8 W# a$ @public class ActionGroupDemo extends SwarmImpl {7 L, g* i. d1 [1 ?5 y
        ScheduleImpl schedule;3 T5 P9 |! i8 o; Z1 n* [) y
        ActionGroupImpl actionGroup;; o, [4 |" n3 s& t. X. j
        ListImpl list;- f' z4 |7 p8 M0 q' l
        char Id = 'a';
! A( ~6 u/ `, K; ?5 e8 e5 B
# F% B! Z$ e. f- e        ActionGroupDemo(Zone aZone) {
/ d" ~3 |7 s' V6 B  N                super(aZone);% ^2 P! J6 `) L
                list = new ListImpl(aZone);& D% o% x% @! }- Z" k5 h
                swarmSetp();
4 h4 G: p2 a) y7 B' Z                actionGroup = new ActionGroupImpl(aZone);
$ H" m' J/ h' p9 `  T: Q& F                schedule = new ScheduleImpl(aZone);# D" G& }; c$ O0 z; U
                try {
& _- Y( p3 G5 f+ o- \2 `: ~2 h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 _! Q( @3 F: F( [; V7 ?; I0 R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# r  R- U( ^9 M: E! K  ?                        % X3 F: A/ m; [: E
                        actionGroup.createActionForEach$message(list, agentSel);' p" |# e* m' Z7 F1 a7 w
                        actionGroup.createActionTo$message(this, swarmSel);; ^. k& n# l5 L
                        schedule.at$createAction(0, actionGroup);: N) c% \8 X6 g' J7 @/ k" H! d1 e5 R
                        schedule.at$createAction(1, actionGroup);
; K8 C( \; ?: d: f) M                        schedule.at$createAction(2, actionGroup);
" F: e  q" g- S4 v6 k2 Z9 C3 v5 H% J- d; I5 C' b8 h9 r( |4 ^
                } catch (Exception e) {; O5 k; x6 j! A" ~& {
                        e.printStackTrace(System.err);
8 M' h/ Y' f7 X# l                        //System.out.println(e);9 o/ P' S+ C: J% U+ J1 M9 o8 f
                        System.exit(1);0 W3 h2 o( o& n1 J8 e5 H3 |% a0 L7 E/ }
                }1 Y; O+ F* ?& Z6 s& Q" i5 }$ L. _* E

% U$ c7 n, j+ w7 E& J+ x% M' s6 d' p* K+ ?; F
        }! J5 L$ }9 L4 o

) @% R2 h. V/ S; h1 D$ j4 s1 G; I7 e2 v        private void swarmSetp() {
8 d4 O2 v' d% l  {. q8 n* s                list.addLast(new Agent(Id));
- A, n) e& ]' I2 e& g3 Q                Id++;# s8 Q+ R  r; N3 s( j  x% k/ [3 p
        }' O* L  w4 k: r  A/ e
0 S; w: I& h/ h9 y" A
        public Activity activateIn(Swarm context) {
* a3 n- j' L2 N3 V  t8 O                super.activateIn(context);/ v) E8 c; s5 x1 z: [$ g0 X
                schedule.activateIn(this);; U* }0 i0 n# O6 |% N" Z
                return getActivity();2 j- R! `$ e& @8 B: q, y
        }
8 o1 E& f. ?( T" g( N# m! x3 `9 I
        public static void main(String[] args) {% A; p" r, @+ Y! U
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 A3 i4 z* [" t7 y6 A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: s, D! ]! ]) D
                swarms.buildObjects();: ]% f) o: O: O1 g; X6 P
                swarms.buildActions();
* t5 a9 r2 v! m3 k% }/ y                swarms.activateIn(null).run();; r, a  n& o2 K0 `" ^- s- p
        }  C& R% f4 T. O: r8 d; L; S+ W

$ S3 R8 {" c# O" A* H2 e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 01:15 , Processed in 0.016132 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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