设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5548|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 [1 d; [$ h) [! w. _) R7 M
  {5 [$ M# q0 C$ w, n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) Z* }5 x+ q4 J" ^5 p4 w& R: }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; L9 B3 B" K) g6 w; k, _) n
swarm.SignatureNotFoundException& i- r& ^3 \1 x  T2 V! S2 R; l
        at swarm.Selector.<init>(Selector.java:76)
0 k5 w2 \, w+ }$ P- O3 Y% {; c" C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 z6 r+ Q6 I) M3 E) E        at ActionGroupDemo.main(ActionGroupDemo.java:67)) c; m2 G# X8 F% |6 y4 H

$ y+ ]( y2 H) V2 S5 y4 P% A! [( a1 u" a0 ~3 B
import swarm.objectbase.SwarmImpl;- O4 w! R5 w% Y; O8 V. ?9 a3 J
import swarm.objectbase.Swarm;
6 d3 V* _; k% V$ S& s6 S) Q1 vimport swarm.activity.ScheduleImpl;
8 n! v% M# v; m; Iimport swarm.activity.Activity;8 g1 s1 j9 n9 Q( U1 I7 M: U2 o2 r, j
import swarm.activity.ActionGroupImpl;
- T1 O- C( S& S% `. }import swarm.collections.ListImpl;  N$ [5 M5 i/ z" P( W8 {0 `
import swarm.defobj.Zone;
+ d8 V  g  i; h+ `3 z/ y. Iimport swarm.Globals;/ U7 M4 p2 s9 L
import swarm.Selector;
* h0 n- p3 \  t5 B  iimport swarm.activity.ActionGroup; $ h: U7 B& p1 ]; H) {9 Q
class Agent {; D. [7 N4 ~* p, v
        char id;- a' R- r3 \  @6 E

' u& C. U( m' F# M        Agent(char id) {
6 L* O  |3 }  S- c0 T. N                this.id = id;( M& c( ]2 n" Q
        }
% x% |5 `$ E1 T, V. M
: A8 M/ m) ]' @; d9 ~! o        public void agentStep() {& r2 O3 r! x+ J! m) r
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% a5 o( c. ~8 [+ E. S6 z4 R9 o        }
, H& K  Y5 T' _" ?}$ N2 L/ e9 L' d! }

: ?/ p. g+ i* K9 Xpublic class ActionGroupDemo extends SwarmImpl {
3 x: O' N/ p( Z5 J8 J  }$ ^        ScheduleImpl schedule;
7 {! y; d" a. y        ActionGroupImpl actionGroup;: }# Z7 x) p: s
        ListImpl list;
2 e7 ?. S; S6 \        char Id = 'a';
9 g9 e5 k- f4 `) d1 n3 h& {; n6 B2 M, I& M4 c8 r- c/ U
        ActionGroupDemo(Zone aZone) {
, y4 X1 r+ D! z9 ~5 i/ v& q                super(aZone);
1 a8 p9 S1 x( \& O" H7 w                list = new ListImpl(aZone);
1 _' S" M! y, d) I7 G5 `                swarmSetp();4 _1 D  ^+ f( F, M
                actionGroup = new ActionGroupImpl(aZone);; L" w4 e6 S9 D
                schedule = new ScheduleImpl(aZone);
: R& y- F2 x+ p0 D& P( R7 e$ N                try {
0 d! t8 C* ]& N                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ q1 {' e4 A, b& c% r% y# P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 M4 ^3 ?- _* M: R
                        
8 \' A5 I( C! W7 r                        actionGroup.createActionForEach$message(list, agentSel);
4 J* C5 l, V* ?% X2 P                        actionGroup.createActionTo$message(this, swarmSel);2 h. k, ?/ Y: M; c, J6 b) ]
                        schedule.at$createAction(0, actionGroup);+ J# Z8 x# w+ p9 L; o5 K" [6 W1 r7 D# ]
                        schedule.at$createAction(1, actionGroup);/ y/ R9 V' B% \! b- b! _
                        schedule.at$createAction(2, actionGroup);
) U1 q! @7 q+ C0 U' ]8 p. p2 [+ F) j+ f
                } catch (Exception e) {
- e( S  B* |  J                        e.printStackTrace(System.err);
& B1 z0 R3 d5 X8 g$ F                        //System.out.println(e);
% K# B9 H- r. L6 m. E# v# G! j9 H                        System.exit(1);
" F6 B, {. V4 y+ L                }2 H+ ^3 h1 g2 q( E. U2 o
# z* p9 G* Y4 S* ?5 Y
" h: {3 D% X) H, i
        }- Z* Z( O" U" W) |. ?
8 @; O$ T% Q% Z( v: S  Y7 c4 {
        private void swarmSetp() {& j! c8 o4 [3 j, c  h
                list.addLast(new Agent(Id));* w1 `" [) U. C: v) p4 }
                Id++;. ^6 n- Y2 s. r1 S' q" j! x
        }
+ U. m) `' k+ q" C: Q7 p
; r6 O) U4 M2 r: ~        public Activity activateIn(Swarm context) {
3 Y9 \6 E4 ?8 l+ l                super.activateIn(context);
4 ?9 ^" V+ b$ n) u                schedule.activateIn(this);& }9 w5 O" L  u9 T& f8 t' B8 ~
                return getActivity();
6 {) h6 g, }4 o) E" P2 B: v/ ~& _        }7 r1 @1 c4 E! S: f- y
# i' v4 Y6 i& X) N, i2 C% s* D
        public static void main(String[] args) {' r  E1 E4 k( g5 X* x% Y8 X& E9 d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) m$ h  {4 ^6 ^* w( r0 ^; G
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( R" H+ c- x7 S
                swarms.buildObjects();
/ s$ ?4 G$ D) W                swarms.buildActions();
- Y1 J' E5 j% M: |9 o0 x                swarms.activateIn(null).run();( J: b" a' H) I2 x4 b
        }! v5 c6 j" @* H9 p2 |

& X% B: O4 e! S2 D- M; S}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-12 15:36 , Processed in 0.018784 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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