设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6169|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 n" \- b5 B% B, y7 `" m
7 K) \4 G% `7 e0 O: O1 \; L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 @$ G. V0 ?0 F& f" v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  @# W7 n; n- H; O$ E9 i
swarm.SignatureNotFoundException; ~, d* L. y; A3 K& e( b( ~$ F
        at swarm.Selector.<init>(Selector.java:76)
) |8 C, b1 M4 R4 ?' x0 ~+ C8 W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  r" @% h6 n7 ]  a: J. U( M3 `( ^9 w
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 I3 Y3 f; K4 E9 G% ^; Q
- [9 c9 A4 J7 T% @1 A
' g  w$ q. r6 r  U  F8 fimport swarm.objectbase.SwarmImpl;
1 y% Q5 ^- z$ mimport swarm.objectbase.Swarm;
9 z2 o7 b& Z$ F( ~import swarm.activity.ScheduleImpl;
6 \8 P2 c6 p5 U' l, P) C) ^import swarm.activity.Activity;
# K* p2 b; e- m; n# o& ]0 Qimport swarm.activity.ActionGroupImpl;, x  ?$ U1 z9 A7 ^" e) u
import swarm.collections.ListImpl;  D- D* g! T5 j% }( E" J
import swarm.defobj.Zone; * o7 o7 D0 X1 W+ \; ?% i
import swarm.Globals;
! ^6 o! L: S+ _8 j3 o' w, C7 mimport swarm.Selector;4 l0 L& b% b/ @
import swarm.activity.ActionGroup;
: x; K: y% |+ \; Gclass Agent {
+ m' R' Q% T1 o        char id;4 g0 }( e$ W  x1 [. x
; z. x# Z. R& w
        Agent(char id) {
2 \/ l7 A% y8 u. a9 s* a, H% g                this.id = id;! n% O# w2 x9 j% j8 A) _  O
        }8 g% c2 Z- F, o9 h$ l, j
) F! r; f0 v" [; X% n
        public void agentStep() {
; G. {8 o+ `( d  E6 ?: |7 x5 S4 e                System.out.println(id + ":" + Globals.env.getCurrentTime());
- i/ T) \8 f! z9 S7 c) M        }
- P7 i3 J0 D% O+ O! b' B( o}8 |' x( c/ T" C' h& ]+ Z& V

  X4 g2 d$ A" c$ T0 S9 Y1 @! Hpublic class ActionGroupDemo extends SwarmImpl {9 \% a. o  O6 \
        ScheduleImpl schedule;# M9 h3 {1 F- Q1 U: A
        ActionGroupImpl actionGroup;/ L: s8 E  E/ J; E, F! s* j: o: o
        ListImpl list;0 k( C* s7 V3 A7 S# r% _
        char Id = 'a';9 N5 M* ?) S& R1 p1 }

$ l# _# {. e, i& p+ e        ActionGroupDemo(Zone aZone) {* R4 G  W- u5 m' y9 Z$ o
                super(aZone);& u7 K+ ]9 l. M4 {* S4 Z
                list = new ListImpl(aZone);
, Q, c3 d* b; j% |9 V8 Z4 j                swarmSetp();- G+ j* Q; J* f% R9 Y. q4 o
                actionGroup = new ActionGroupImpl(aZone);  g  }0 a9 T7 }: Q6 o
                schedule = new ScheduleImpl(aZone);$ h8 L8 s: o3 e. g8 W
                try {) Q0 \) S8 v( [. b4 F( C( W
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 t4 O8 B8 {: `! M0 C4 p% _                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. s; m3 d/ i; v, G
                        / E- L/ X2 s, c1 t+ `% I
                        actionGroup.createActionForEach$message(list, agentSel);
" w7 g' H. [. n8 f                        actionGroup.createActionTo$message(this, swarmSel);
' C' b9 e5 f+ k& J: I. {. r& W6 d                        schedule.at$createAction(0, actionGroup);7 u+ @. D( S( \2 k7 |
                        schedule.at$createAction(1, actionGroup);
  _4 A: B+ t: w* Q                        schedule.at$createAction(2, actionGroup);
+ t9 N5 J% I+ ?- w  k! d* r& B6 ^2 v# O6 T: w
                } catch (Exception e) {' Z8 q: |+ w1 u$ w3 a3 R
                        e.printStackTrace(System.err);0 {6 i6 j" B$ a3 L2 k
                        //System.out.println(e);  u% h7 S/ I0 t* b
                        System.exit(1);
7 n4 ^( a6 w8 M  g( i$ S                }
0 A- Q# f+ @: {$ H9 w
$ m* ]; ~2 ]% q+ `: }9 C* i" f/ c0 w1 m* @# u
        }! y, H$ W8 d- A' y+ ?6 i4 [

: \6 D+ L4 l# X7 L; q# u        private void swarmSetp() {* }( z' J' B  Z' W% \+ e3 ]/ H
                list.addLast(new Agent(Id));& N+ Z& n& U. J9 O) k7 x( t
                Id++;: `, C0 b& v# x; d7 ]3 H
        }
" C6 b2 I' _7 ^0 |& u2 G9 m0 {- A# c
        public Activity activateIn(Swarm context) {
' V0 b7 Q; t1 O( D% K9 P3 {( l- C                super.activateIn(context);0 O8 l9 n  T6 R1 h. b) ]
                schedule.activateIn(this);
4 l/ g$ q2 u6 x: ]6 `                return getActivity();
% {  @) H. p, o( U& \. ?/ c, |4 P6 m        }: C# z' Z0 h8 P' s. V0 L

" C- t7 A: k7 E* d        public static void main(String[] args) {
4 k' j& Q( o0 e2 k! ]- J. b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& b3 v4 i3 A1 q0 D# U  ?4 ?
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; B' p5 s6 N6 l, U( U) B
                swarms.buildObjects();
8 m8 h1 m. x6 n9 P) y. e. e                swarms.buildActions();! e; E$ Q" ^* k1 V/ E0 e' I
                swarms.activateIn(null).run();
) K. _& i3 V' N+ p        }- _: w- X% F! S* t3 k* o4 M9 d

' u. t7 g, S" _! B0 S5 U1 I; ]' v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-20 06:22 , Processed in 0.017356 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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