设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12819|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . J0 }: T( [. C7 S( B& J( V
3 w+ t/ W7 E* |, Q( h) @/ K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% I. D. O. O# F1 b8 d" s  A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. }- g( |, s% i4 }7 w/ t8 aswarm.SignatureNotFoundException+ W6 r  n6 p2 B
        at swarm.Selector.<init>(Selector.java:76)
/ x7 P4 t5 K: \/ u' A, u- O8 c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 S$ p% I- _* Y3 U& b# Z$ k
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 C* P& {( p) r; ]$ |. \

, ?3 R; b. n7 E9 p8 R/ d/ Q7 L
  E( h  ]. o4 w. F: oimport swarm.objectbase.SwarmImpl;
, F( [0 T9 t/ ]# ?7 Z. \import swarm.objectbase.Swarm;
2 ]: }0 a: ], S# S: ], E' k" K$ aimport swarm.activity.ScheduleImpl;
# c: H* v1 N1 }; u- u6 [import swarm.activity.Activity;
2 \( n& a0 Z* H. j4 qimport swarm.activity.ActionGroupImpl;& ~* b4 r  D# D# l
import swarm.collections.ListImpl;
1 C3 s6 a& F% g% B( f; j6 Yimport swarm.defobj.Zone;
2 V, ~. J  ~$ j2 W. Q1 O8 ximport swarm.Globals;
( T1 d" Z! }! Z) I  _$ {1 E5 oimport swarm.Selector;9 C2 v5 O* y& g2 N
import swarm.activity.ActionGroup;
! X3 O5 h4 v) `) s" ~0 v; `class Agent {% |7 |2 \* y% h0 j/ v
        char id;* {4 U6 i9 E8 T5 z5 Q; F
6 R( O; C0 R' ]8 ~9 B
        Agent(char id) {  J  d8 L  L5 [
                this.id = id;
' J( O# Q  y. M( u        }: U3 @) i1 c) B& v+ B- b1 b

# p) U% {2 j- N) D: E* ^+ }        public void agentStep() {6 l- X( u6 Q9 }; V; d  g
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 E6 _/ v7 A' D$ F8 G4 X4 f
        }
3 @7 O4 h7 {. {% B: N$ w# Y}
4 k7 w9 ]9 T1 \0 |2 n6 _
8 L$ r& ~6 E( ?& O7 I& Hpublic class ActionGroupDemo extends SwarmImpl {
  T( f7 a% z4 Z6 b2 U8 ?2 B2 \        ScheduleImpl schedule;
# N% N) I1 z1 |* `/ |2 u        ActionGroupImpl actionGroup;0 a+ C$ O- l* y8 R$ ~, h8 W
        ListImpl list;& [6 q' J* y( a6 w
        char Id = 'a';
( v6 L% C" S4 z6 ~" u/ P
% o1 o/ r1 a. l) T" I: S7 p# Z0 z( I        ActionGroupDemo(Zone aZone) {' o: ?. D4 {2 g  c
                super(aZone);5 b5 u5 Y: E; u  R
                list = new ListImpl(aZone);
. Q: j9 Q% ?5 |1 C                swarmSetp();  K! J- W0 x7 N1 F( _6 u
                actionGroup = new ActionGroupImpl(aZone);. y9 t* x/ y5 M5 F2 w
                schedule = new ScheduleImpl(aZone);
1 W& D3 c! m5 Z$ Z- U* b                try {
5 |+ f/ g9 e; r: {' @                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' B+ o1 F( R/ Y! |0 V) O3 h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  c: @. k. h" N3 u$ P0 k  n9 q- S+ R                        , g# O$ M5 S7 W$ E, _
                        actionGroup.createActionForEach$message(list, agentSel);4 p( n: J' I* s
                        actionGroup.createActionTo$message(this, swarmSel);
. I: W8 b( z& x7 }  o                        schedule.at$createAction(0, actionGroup);, M& X/ J5 S% y2 }- G/ W+ c2 ?# ^% w
                        schedule.at$createAction(1, actionGroup);( ]& G5 K/ q2 t% R& t1 j
                        schedule.at$createAction(2, actionGroup);
3 `& r3 Z# i9 W$ s: \
" g# ^5 N3 g5 Z7 y& U2 p0 P                } catch (Exception e) {0 a5 [. V( C5 W, K8 F
                        e.printStackTrace(System.err);, U1 n* Q8 x- \& A% L( J. p2 E) W; Y" T
                        //System.out.println(e);
# p/ c. b2 M7 F3 L# w                        System.exit(1);
2 \- f$ Y, [% L                }, n3 u+ m* @0 P" s4 e* b9 ]
- Q/ e* G! B- b7 |

5 L2 W% P( l) n, {        }
/ t+ o- H# }4 N
( l4 ^7 [' ?4 ~+ q        private void swarmSetp() {
/ |2 ]+ ?1 _6 f4 a# j                list.addLast(new Agent(Id));
- ^8 V. r" s( P4 _! k+ A" E+ L                Id++;) W* s5 b5 x: p# c0 A+ F; Y/ t
        }' ^# H; \! G2 {2 Y9 w

& }+ b% E  X- s. e: R        public Activity activateIn(Swarm context) {
+ o+ d  A% @9 A% _  ?6 G                super.activateIn(context);
/ E) a: x2 s+ j                schedule.activateIn(this);
, w* `$ C: i* W& R2 @# m                return getActivity();# ?4 j$ ?* J' b4 x3 E1 _5 U3 A
        }' ^* C# ^* k3 G8 D$ t5 M

+ S$ j) H8 y# j! H, j" B. u5 r        public static void main(String[] args) {- G# n4 D: s4 X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% ~. `% a& p$ z6 N; F
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; m+ H9 v8 r- b  X
                swarms.buildObjects();8 R- E6 J/ ?+ i4 J* I$ H
                swarms.buildActions();* N0 S1 |  a% i& b) N* `
                swarms.activateIn(null).run();" g, G0 R# E+ y( g* q0 B, y0 _
        }- F9 N* p* a, t$ f2 O" a. @* ~

4 V! j, P9 D6 ~) }3 o9 [}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 08:35 , Processed in 0.020036 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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