设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10474|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 U7 C! @# Y* V0 |
" T; Q' }( i8 |4 S0 A0 f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ m2 w) m, x1 P0 _5 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; i% p6 e1 e! qswarm.SignatureNotFoundException* n- F& A; t0 M8 j- ^% ~# b
        at swarm.Selector.<init>(Selector.java:76)
1 y/ r( p) X9 q; n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# w$ `  g$ Z( O3 |1 [% N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 E/ F. J' ?8 J  A
( F* ]- s* X3 r- Z( j5 m# r
7 |' D" b& i  n, N
import swarm.objectbase.SwarmImpl;
* [/ |, R8 I! G3 Jimport swarm.objectbase.Swarm;1 Y8 y# g6 c9 z5 {0 k# I/ V/ @9 p
import swarm.activity.ScheduleImpl;
1 I& s, {! ~8 m2 s4 aimport swarm.activity.Activity;
; N) u3 M, B4 K/ ~/ }import swarm.activity.ActionGroupImpl;
( o  v. E( Q7 [6 `import swarm.collections.ListImpl;7 c+ [$ N& ], ~8 F% t# Y6 W" e
import swarm.defobj.Zone; * e4 n; C4 D& H  l, |0 f
import swarm.Globals;( N3 \7 U; i8 M) D" B
import swarm.Selector;
# c/ |; C  h$ w& z# M6 Mimport swarm.activity.ActionGroup;
* }3 T9 {& ^( Cclass Agent {
, e" h- M/ [9 N        char id;
( L( ?$ L$ K3 |, J7 S: [) ^* ]8 v. @* m' ^
        Agent(char id) {! }% j0 }& x3 J$ I0 L" B' V: `" ^
                this.id = id;
- Y% |& |- Y( ]" D. I2 |        }7 c  z; j& Y3 k6 h( |  N
% I2 [2 H# ]- ~4 N7 F( y& j
        public void agentStep() {
+ a/ T6 U# Y% S. `                System.out.println(id + ":" + Globals.env.getCurrentTime());9 c; A" ~  a! x* l- _
        }" B7 A) N: ?0 _$ \- c
}
  O# k7 \& X% o
" u: d5 L! ?0 v1 m' W' p) B. Wpublic class ActionGroupDemo extends SwarmImpl {& c4 m5 q  x) w: |8 X* v
        ScheduleImpl schedule;
3 Q5 G+ h$ X* ?% e( t! e/ c" k        ActionGroupImpl actionGroup;7 s/ }7 F5 K4 w% k& T
        ListImpl list;
+ M  z, D, ~& ~) F        char Id = 'a';: V7 q- @3 ~4 I' q& k% l
3 \) Q" H. [+ X0 @/ E
        ActionGroupDemo(Zone aZone) {. ?2 E$ R) B6 F/ b/ ?0 X
                super(aZone);7 [; i% H. B- \" H& ~& ?: F7 ~
                list = new ListImpl(aZone);2 h, T3 I0 Y( T/ t2 P3 v% V; \
                swarmSetp();
0 [! n# G" E1 u: a. i                actionGroup = new ActionGroupImpl(aZone);7 R1 F  d8 `, c
                schedule = new ScheduleImpl(aZone);& x0 h6 G; x1 O/ y/ j& l7 a" m
                try {6 W9 h( c8 S' A( e
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ w- v4 u1 C3 A6 ~3 L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) ~, O2 I% N! ~
                        
; G$ h5 r& z, O                        actionGroup.createActionForEach$message(list, agentSel);6 w* b5 B* {! c/ X1 R6 M
                        actionGroup.createActionTo$message(this, swarmSel);& W; _! O% F3 S* }
                        schedule.at$createAction(0, actionGroup);
$ `6 q# |6 b* R: g& q7 d) w7 p                        schedule.at$createAction(1, actionGroup);' F7 G: ~. e# v1 ?" P
                        schedule.at$createAction(2, actionGroup);
5 P! v; J9 Z9 J0 k7 l/ R. A% m( b8 Q! q" k# I$ m
                } catch (Exception e) {
& m+ @1 b% X& C5 u) }8 n7 e                        e.printStackTrace(System.err);( e: `' B' B4 ^0 f6 p' f% r" e
                        //System.out.println(e);( ]3 L, {" K6 ^, R' w8 D
                        System.exit(1);( j. ]7 u& w6 u8 g( j
                }9 B& g& p- Y2 N- o" }& O  W! T9 a

" S! N6 X* V& }0 Y; Y0 O$ ]0 i" K( n
        }- ^% P+ h% T5 P- J
* q4 C& \+ u; w; u
        private void swarmSetp() {
# T% @! x: W' h/ l                list.addLast(new Agent(Id));
+ X+ ~5 w. S* p3 f* W                Id++;4 ?5 g' l' E' F" g/ F4 Y) G
        }8 D$ Y5 d; h0 l! e3 A* X2 }4 z

  M& R. D' g: L) i# r        public Activity activateIn(Swarm context) {
+ a9 G+ Y# }3 ]  H/ ^' U                super.activateIn(context);( m* C& t" G7 k( X% P3 u; m/ l
                schedule.activateIn(this);
1 h- D# c5 d2 n+ j8 y# Q                return getActivity();
) E% @( @  |( |        }
/ C2 f9 b3 p" d" @9 i# Y! M; H4 `' L1 T, M3 v4 m+ N
        public static void main(String[] args) {
4 v$ C4 P4 G& A" G2 T- x. |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 j' D; i7 S. Q  |7 Y$ {# n- c& z+ @                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. M+ H6 M; _% L+ H  D/ V; T* H
                swarms.buildObjects();
) j6 x  t" c; o% n3 _- f                swarms.buildActions();. Q# ]. ]; n$ x- a2 @
                swarms.activateIn(null).run();6 n# B# a0 ?! F% w9 N! @
        }; `3 ?0 o, O1 D1 b! v, u

, h' f6 M, C( N# Z2 J- e+ M3 k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-15 02:54 , Processed in 0.017966 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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