设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10292|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 P4 W+ X9 m5 \( P
2 V, ^# O( b( l3 Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 }2 T' o0 C" k  B/ w! W% f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 D# {+ o  j  A4 i; i/ R& `6 C6 g7 |
swarm.SignatureNotFoundException
- g0 a8 k8 x, K) M4 u# v* a        at swarm.Selector.<init>(Selector.java:76)/ t+ |* W4 ~1 d5 h; }3 I
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ k1 k9 U+ M! G
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 {9 E6 _( N5 ~! e
# `* _. m) t9 d, b# q' X( i; q/ X
import swarm.objectbase.SwarmImpl;, L* m, ?, {4 K! ]
import swarm.objectbase.Swarm;
0 E5 ~1 K- m9 o# |import swarm.activity.ScheduleImpl;1 U4 _8 V0 E# y. \5 K6 ?% y
import swarm.activity.Activity;, N. c% l5 H$ T
import swarm.activity.ActionGroupImpl;
7 x5 b1 {2 |, Y+ X% n" A4 zimport swarm.collections.ListImpl;" R* o$ X1 Q( N; f) T+ z2 ?8 Y4 l
import swarm.defobj.Zone;
9 @* A* q4 `$ ^1 {1 Himport swarm.Globals;8 E; r! P, h) d2 i- w7 y, u0 _
import swarm.Selector;2 B. S1 e, H3 u4 h3 k0 Z( m
import swarm.activity.ActionGroup;
5 X2 Y- X7 _; }6 F3 u5 T/ Pclass Agent {
  B( e, X' d: [+ m  B        char id;( ?( ^! r- u! _9 ^! D" A6 d4 Z7 E

. D8 E* @4 E! o( f9 k/ M7 f        Agent(char id) {- Q# E! h# J: n' |) u. g+ X
                this.id = id;
0 X. n1 u& t# l+ d' `* k3 f        }
; a: f( E. }; @% Q8 F2 a; Z
6 F2 g, B' u: }" b        public void agentStep() {, e, d& a9 [4 i* ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());! A/ h' b/ b, {% f* K
        }
, ]2 P5 {0 F$ i6 L# \( G}
. m: ~+ x! o0 t. v2 S5 d6 k# c
/ \3 i+ N1 L, n6 s: Qpublic class ActionGroupDemo extends SwarmImpl {  x2 t" c0 O0 ?$ o- K
        ScheduleImpl schedule;3 G+ k: `5 S6 c9 b
        ActionGroupImpl actionGroup;
% L; m- G. Z: Z( u- M- D        ListImpl list;+ f: x3 ^6 l" q3 d
        char Id = 'a';
" `! \3 c: b* f' T
: a/ i( Q: @* c3 o        ActionGroupDemo(Zone aZone) {5 O3 k3 _: K  a: ^  [1 N6 Y- L
                super(aZone);1 {. }& P& R1 J# C! F
                list = new ListImpl(aZone);
' j6 i7 G9 s1 k. L3 I1 Y- ^5 P                swarmSetp();  D1 Y3 z: `' J/ ]* T
                actionGroup = new ActionGroupImpl(aZone);
* w3 K5 q3 s# L+ H+ y) {( j                schedule = new ScheduleImpl(aZone);
+ P0 J& H' |8 Q                try {
/ Z! S) @, \" S) A: p1 J                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' {* u3 @, K- l( ^# a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  B" Z! u1 y$ K* L/ M* P" ^5 i* A; P6 a
                        
0 l' r8 v) x9 g* }# U6 _: g' T7 k  C                        actionGroup.createActionForEach$message(list, agentSel);7 ~- X/ D: |& a3 b7 _8 f3 K
                        actionGroup.createActionTo$message(this, swarmSel);; q3 Q6 B* H2 d! q/ a) O8 R
                        schedule.at$createAction(0, actionGroup);
/ k6 [# E6 H. D1 c/ z  C                        schedule.at$createAction(1, actionGroup);  {: R  T2 ^5 T1 S$ A7 x( u
                        schedule.at$createAction(2, actionGroup);, S9 p" }) Y- u& h" I5 q
1 e/ `9 I; s% V, Z7 Q: a
                } catch (Exception e) {
  `" ], b% {9 \, D                        e.printStackTrace(System.err);, h. [: d, e. q0 u; F
                        //System.out.println(e);. ?2 C4 Z* \  ]: n: b
                        System.exit(1);
- {" U! Q9 l7 f4 P  q- {# j                }; z3 s! `' c3 q' Q, r0 D7 g

2 |( I7 T) m9 w5 ]
  S. K' U* v: k8 ^* s" p) }        }, R) E1 y% M- p8 X+ G

7 Q) ^5 X: L4 [5 @4 Z        private void swarmSetp() {, Y8 T$ C1 \: g$ `. p, m, ]
                list.addLast(new Agent(Id));0 F; N' x0 y/ W
                Id++;
5 R0 m3 h" m) G0 C* }        }
; `; Q& ?; p! _3 S9 Y' C: I2 n9 p  g' N- u6 R$ x3 @* M+ Y- }1 d- U
        public Activity activateIn(Swarm context) {
1 d; S8 S' l4 r1 _  Y/ `' y5 X                super.activateIn(context);
! e2 e5 j9 l! A7 Q                schedule.activateIn(this);- y/ t4 ^; g7 l9 ]+ o2 g
                return getActivity();- ^* i; R* Q% [) x! @! \
        }
/ S4 Z& C  m: J7 Q5 w; K$ q" x8 u. b! o1 ^6 s" d, N* P4 c
        public static void main(String[] args) {
/ ]6 h( q# H! y2 Y9 B* X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; O% p  C( `  y$ j                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! u3 t) O6 ^7 p9 P* p, e
                swarms.buildObjects();. l( ?+ P8 t* g
                swarms.buildActions();
' b  t5 ^  O: B; N  I  M* Y1 _7 E# S                swarms.activateIn(null).run();
8 t7 b4 g- {1 _0 C  g        }
  z7 b& j3 A; V5 T; m6 _* x7 ?, H& F' Y- c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-9 19:05 , Processed in 0.021066 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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