设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12013|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 z4 H9 B* Y* Q; V' S4 O; h6 b) S; d0 ^7 l! R% N7 n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) l& Q: i. Q/ L5 o: f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 J" R; Q# F3 G! r: y
swarm.SignatureNotFoundException' _4 C9 y- v1 D& R
        at swarm.Selector.<init>(Selector.java:76)
. Z' Q2 g3 O0 W: v$ A/ ^4 T  [8 I0 Y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 L9 q5 F8 t$ _+ d" T$ b
        at ActionGroupDemo.main(ActionGroupDemo.java:67): ^4 h! a8 I# t  ]
* o$ ~- W  D( i8 ?" w3 b& V
( ~7 ~- \; \' a  V' K% v
import swarm.objectbase.SwarmImpl;
/ \6 Z1 l2 M( u8 N4 [' q! qimport swarm.objectbase.Swarm;6 Z+ V8 B- y$ Y8 S1 p
import swarm.activity.ScheduleImpl;
! {- O8 ]! q- w3 j! s: Y$ Eimport swarm.activity.Activity;
7 M1 m7 ~/ v) D& Z% `( himport swarm.activity.ActionGroupImpl;6 k3 O* L1 J6 J' p8 b% I; Y+ \2 g& [
import swarm.collections.ListImpl;8 c- L$ d9 Y1 ~' J4 _0 O
import swarm.defobj.Zone; 9 H/ `4 c# {- y* d) T* Z
import swarm.Globals;3 n) J$ Z& u; h2 S  t
import swarm.Selector;
  t+ Z$ O+ a7 d$ S% u. }import swarm.activity.ActionGroup;
1 @5 Y6 v' }2 g# @8 nclass Agent {
1 x; m- W& L% ?. N+ ~* M* n        char id;7 N& w+ P. e& r# n
) J5 J+ e+ i3 _$ M( ]' g2 o
        Agent(char id) {% i4 f9 J; a) Q: K  |+ I. Q
                this.id = id;
$ ~' \: b  d# r3 |. }# U        }
& k% q; ?  r% u. V# J0 Q7 a5 E7 Z" i( ]+ z
        public void agentStep() {
7 r9 [9 x5 |7 H9 o0 Z4 f3 j7 L                System.out.println(id + ":" + Globals.env.getCurrentTime());
) ~. J! Y2 V# d        }
1 k9 E( m& V- @( u; e! p}8 f+ e# F2 ^5 X+ x% _1 @) o

9 E  R0 c' S* ]8 x# b- Epublic class ActionGroupDemo extends SwarmImpl {
( n5 c. K" M: P% R        ScheduleImpl schedule;- q: g& H  W& K7 x9 ^
        ActionGroupImpl actionGroup;
$ y+ U" n. i. w        ListImpl list;1 M$ M$ h* Z/ V0 c2 e
        char Id = 'a';- ^4 o: c  y6 u9 ^/ A

2 C/ W7 w  @$ f# O+ N% l, f0 `        ActionGroupDemo(Zone aZone) {+ T7 C& G# c0 o7 C/ i- y5 R
                super(aZone);
. W& J% S$ _+ L! |0 t" [+ u                list = new ListImpl(aZone);8 B' a% k' M$ s$ W# @! p& ~
                swarmSetp();$ n9 V! s0 t( O$ L
                actionGroup = new ActionGroupImpl(aZone);
4 x7 P) Y6 T4 M4 s# w; N                schedule = new ScheduleImpl(aZone);
( z3 J% [4 d, Y1 \% A8 h; D/ E. y                try {3 ]  e: F! n) _& v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, P# @! G; s' J2 D) a6 z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 _7 ~% X% s2 p2 R! K                        " r8 D; y/ o) x% \; O- r
                        actionGroup.createActionForEach$message(list, agentSel);# z, a$ _, E" x- Y4 S
                        actionGroup.createActionTo$message(this, swarmSel);& U* R% F0 i' @& _$ s
                        schedule.at$createAction(0, actionGroup);
7 V* x9 V2 u) j4 M6 ]) Q/ l                        schedule.at$createAction(1, actionGroup);
5 `' ^- k* _0 n7 Y) P* U# u                        schedule.at$createAction(2, actionGroup);
3 Y, R/ t" H1 _% D$ a. D+ [5 g$ ^: e; [7 g
                } catch (Exception e) {
3 W- r* S3 ~0 k3 V. N& W                        e.printStackTrace(System.err);3 v5 \5 x0 n5 Y
                        //System.out.println(e);
5 X, |& R% L+ b( i! m9 q3 G                        System.exit(1);9 Y) c0 T& z8 E* S* G+ C$ M9 c4 Q
                }
! ^* ~) E8 s0 A, r, r$ q( n7 e
- ~( |. @. k9 d6 p6 j5 d. y
* |& t3 A+ Z* N9 }        }6 v' u1 Q" Z) j. |1 v

, G7 ?7 D1 ]$ u9 {        private void swarmSetp() {0 Q; c& u! }9 E5 W/ L
                list.addLast(new Agent(Id));* }# j0 `6 [) N& a& ^! f& Q
                Id++;
' K. E4 V) g3 b! y: m- E        }8 Z/ L5 B) T- B
& I- ^) M$ N( U& d
        public Activity activateIn(Swarm context) {
  q, r- I2 ~1 r                super.activateIn(context);# H7 v* o' F" v( {: h1 F* O
                schedule.activateIn(this);
) x* ^: Z: K- L! X                return getActivity();3 w; ]- g. L0 |7 h% T' d$ p
        }
* G- Q5 [9 B5 A$ t
' O, N/ b# ^; R3 B% q( e/ t        public static void main(String[] args) {1 H+ g3 J, x" Q# n: |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; u+ M1 g( h9 i) D/ Q* O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# ~. e5 Q( H9 C. }7 D, f
                swarms.buildObjects();
. S, m/ E1 V9 t' E+ U! e; v$ h                swarms.buildActions();
" \4 ^5 X) T8 S- x: m                swarms.activateIn(null).run();
4 b8 ^7 ]' d, Y3 ]        }
3 ?) |: g1 \+ @6 r
' o6 J- p  `, F5 T$ t, T* m* n}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-28 03:24 , Processed in 0.014503 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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