设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7916|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . s2 z4 Y; [' U3 r' d

9 K6 x7 j/ O/ R% X& }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ {+ O: `: m1 O1 P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. {; P* ?+ S: d0 Oswarm.SignatureNotFoundException7 k+ C  U$ i9 Y3 T, J* ~
        at swarm.Selector.<init>(Selector.java:76); m/ |0 ]4 P$ E5 U# y" u: K  H$ U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 u3 l: n) @/ y! l4 h7 V7 a        at ActionGroupDemo.main(ActionGroupDemo.java:67). W2 q, @5 U: e& }. Q4 Q7 e
. W5 u7 P5 M( P( B
: J9 O6 F5 ^1 c6 I- b
import swarm.objectbase.SwarmImpl;, h: z) w$ {  U7 ^
import swarm.objectbase.Swarm;
+ |$ r; Z; g( t$ Vimport swarm.activity.ScheduleImpl;
$ a4 g" V1 Z& ^. ]" `import swarm.activity.Activity;
9 F5 U6 U  t- R+ Dimport swarm.activity.ActionGroupImpl;: m) m: W: P8 x6 T
import swarm.collections.ListImpl;: J4 [, i  C2 q3 ?
import swarm.defobj.Zone; 4 T" k0 c4 Q, U( Z8 j$ y1 z  C, ^7 g
import swarm.Globals;
+ s0 K1 U, D4 S, v) L" Fimport swarm.Selector;, x) _2 _6 {  V
import swarm.activity.ActionGroup;
: R/ J! V8 @" M- q4 uclass Agent {& K- o9 P5 a+ s2 D5 `$ F0 ]: Q
        char id;# W/ b6 f" P: f" O: E

8 t8 ]- h1 H2 K% f        Agent(char id) {
* _+ {1 b# G# e' V                this.id = id;
9 r6 c) D+ B' d/ f        }  ~  p& |. v. e# S& h& M! k
% W  G* {/ f; E5 l) ?# U9 Z
        public void agentStep() {
2 k6 O9 B+ e& G! q  Y                System.out.println(id + ":" + Globals.env.getCurrentTime());- u2 W5 ?* ~% p
        }
* x) l) b8 k( Y% B}: H& n: |. y' e) ~
; b7 W# h& F( C
public class ActionGroupDemo extends SwarmImpl {; H  D" W* Q  z" E6 Y
        ScheduleImpl schedule;; `$ m( a: |' ~8 a5 y. l- A1 }
        ActionGroupImpl actionGroup;
4 G! ]4 J. O' C3 |* q        ListImpl list;
* ^+ Y2 m7 l6 @: n1 ^" k        char Id = 'a';) u% c0 `( Z# N# z4 a

  ^8 F. s: w" l. {        ActionGroupDemo(Zone aZone) {
! u; ~& [4 o+ J5 M- j                super(aZone);- s. E1 @4 c( T% s/ |
                list = new ListImpl(aZone);* ?9 I, g: G! g- d' V
                swarmSetp();- u: ~/ N# L* d. f( m" g
                actionGroup = new ActionGroupImpl(aZone);
5 s4 D, r6 L% h: H                schedule = new ScheduleImpl(aZone);  ]! A1 S9 H. U; y; p) y' h
                try {! j" p0 A. h$ Z# g; G  A! d' v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ c' P% t4 Q0 A$ v- I& ^: M
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 m! }/ J9 ]0 }, X- A; A
                        $ R8 \: B1 k# S
                        actionGroup.createActionForEach$message(list, agentSel);
8 y1 q; p5 |" G8 R4 L                        actionGroup.createActionTo$message(this, swarmSel);+ l  Y6 B- Y2 z9 i# Q( s' A
                        schedule.at$createAction(0, actionGroup);
) m$ N( z+ D7 h. a/ a2 w                        schedule.at$createAction(1, actionGroup);* M; o  o4 v; O0 }5 t; l
                        schedule.at$createAction(2, actionGroup);: J1 H, e4 {3 w+ x4 J$ e, J

( b& S4 W, ~/ ~                } catch (Exception e) {% q  m% P* y7 {. K! e1 I! h
                        e.printStackTrace(System.err);& N1 T: Y# i2 n$ R# ]8 a, v
                        //System.out.println(e);
! W5 P4 p5 t( `" X- C+ p) V                        System.exit(1);0 z( F  I* A5 G" Y; W3 \; d6 k, l
                }7 p' K" l0 B# u7 z2 K

4 S! V* c( X6 E& D7 {+ ~1 g0 j
! n. [- i  b( U, J8 c( E        }
" X& V$ p4 k0 H+ n: V9 [" B  y& J& D& k7 W
        private void swarmSetp() {0 R5 O1 X' a4 i' O+ J6 {7 n) f
                list.addLast(new Agent(Id));7 J; e& I  {  K+ |% B$ q
                Id++;
# ~" R7 ~1 x! C3 ]  T        }+ L9 e) k1 r9 A  B5 W

$ E' @/ `0 |* `, y; K$ a: d2 C. ~        public Activity activateIn(Swarm context) {
6 O' r  H5 Q, c7 x' n                super.activateIn(context);% \2 o# ?- E( U) N7 A1 `
                schedule.activateIn(this);1 w, r3 m. g! ~0 X4 W4 o* p
                return getActivity();
4 ^, ~; F+ T# W3 N9 c! ]9 J        }
- H1 G" P+ d' P+ t; `7 c
1 c$ |: j6 v5 ?# C( _5 U8 n2 `+ G        public static void main(String[] args) {
6 y5 y' s5 D- c" l% Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 A% N* g. |% H! U/ Y5 w4 \                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ n# S& E/ V: R1 Q/ k+ q9 |9 \
                swarms.buildObjects();
1 M; l9 k( o0 Y: V  j  m                swarms.buildActions();# ~0 ?0 ^) x3 R! i
                swarms.activateIn(null).run();
/ [- L) p" P& M& p$ K        }4 b# w+ e+ c! L0 r! H' D7 V- B+ s" m

/ r, P3 ~4 S/ h) }5 b  G4 N3 D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 15:02 , Processed in 0.018229 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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