设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6999|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " p0 v2 @% P# l" X, I. r

9 W1 t' t( H* o( m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 E- ]; X+ m- l) P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( w- I" g7 @6 |' B
swarm.SignatureNotFoundException2 `+ U; G7 L' l6 i4 \
        at swarm.Selector.<init>(Selector.java:76)2 i6 w* S) l. \% t' m
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 B" ?# n( G# e$ u' Y$ V2 Z. S; ^
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 X8 i' I/ @) E0 B- M2 J- ?
9 ^2 b; H0 W4 m! f
; ]! v# Q7 W1 t0 q( Eimport swarm.objectbase.SwarmImpl;
# ?& K2 p: K2 e- m. T# |3 ]1 nimport swarm.objectbase.Swarm;
& w+ X0 \# q2 e7 |- L! ~/ Mimport swarm.activity.ScheduleImpl;& ~3 M1 s* D) Z7 X! b
import swarm.activity.Activity;
* k; e) W9 y, u" U4 M% _import swarm.activity.ActionGroupImpl;3 j3 |2 l" Z) l- V: }' n4 W4 S" Q. \
import swarm.collections.ListImpl;
" h7 j! [' g8 G4 C2 }/ m' Ximport swarm.defobj.Zone; % ^9 M/ t% x$ L; |
import swarm.Globals;
" H0 S' L# y; ?9 Y" M4 w- cimport swarm.Selector;
0 ?: A. L( H" v- F" Qimport swarm.activity.ActionGroup; " E* C/ _, P$ {  B4 b9 U
class Agent {. d- u$ }! P7 Y. }  c
        char id;, U1 V, Y8 C, W* a+ d* E

3 g6 s4 Y+ r3 m8 z' Z9 s$ F        Agent(char id) {0 ~! h3 t3 e2 |1 U9 ]
                this.id = id;4 l4 n0 J/ e1 a/ \' X
        }
; {6 O) c! I: a, M  t
6 o+ z# e* z+ `: G7 \        public void agentStep() {1 d: z0 r$ y1 _7 _9 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());$ [; B1 m+ N/ w% Z
        }
3 H+ y. Z- P0 |9 c8 B}  L- I+ q" r# y4 O. k/ y! t* ~4 u

" [9 t  @/ S* L) y3 v/ ], f. ipublic class ActionGroupDemo extends SwarmImpl {
: c3 a1 v" n5 `3 e$ u4 t3 u, y" c8 B        ScheduleImpl schedule;  `6 V2 g: t  y' v+ f: v
        ActionGroupImpl actionGroup;$ d; R$ |% \- M0 a
        ListImpl list;
: v/ w" \/ C1 M- }0 {        char Id = 'a';
1 K/ ~( c3 h, i$ T% I- m5 U
5 H* a! }6 S, m) v& }        ActionGroupDemo(Zone aZone) {
0 C, x8 g! |9 l! [/ L9 |; T; M4 y                super(aZone);
( n& I% W4 G' ^6 X# d  ^                list = new ListImpl(aZone);- k. A# k, @. R, q; i/ P- N
                swarmSetp();, `% o, e, `% y7 r3 W3 z1 e% K) t
                actionGroup = new ActionGroupImpl(aZone);
7 ^0 g* i, {$ z$ \                schedule = new ScheduleImpl(aZone);; ~4 d6 J1 X& X- z% X. T) \
                try {
' N2 f: v) o& \4 V4 k+ t2 [, S* D$ b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% U, K+ t+ Q# t* t' X* L' _( [, U
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ Z4 z3 O" b6 |+ ]                        1 C( R0 `% E2 |4 U7 J5 G; Y& ^! c4 P
                        actionGroup.createActionForEach$message(list, agentSel);
5 _/ o, a5 V( {                        actionGroup.createActionTo$message(this, swarmSel);
) t4 ~7 d5 C: s8 R                        schedule.at$createAction(0, actionGroup);
4 H! C; E7 t. K& p7 j; t1 ~4 E5 s                        schedule.at$createAction(1, actionGroup);
& m. ]! L6 k/ z. m9 e/ t: l                        schedule.at$createAction(2, actionGroup);2 x. W$ z" }+ \6 C) `

! d' a7 S9 H( P% ]( S                } catch (Exception e) {. z: E" O) ^8 ~$ H" @! {) f! ?
                        e.printStackTrace(System.err);9 d) i8 X6 v% p- e. A
                        //System.out.println(e);
2 E5 d9 K" ~9 \- ~9 Q                        System.exit(1);
4 V4 U% n) m  z3 O/ F5 z* T6 s1 T                }
. W8 c, e. C% }5 ~  N  ?  b3 C+ W1 ~% ^4 R$ Z: z( u

. {3 T! j: A- b2 D9 F9 z        }# E. I2 t- `# w) }

8 S. D& s/ F+ L: }3 M* m        private void swarmSetp() {
4 K1 B/ J1 g9 l- S1 [                list.addLast(new Agent(Id));  z& f! `: u# p# f; x
                Id++;
. s' A7 w, b  e: k; F' t        }
  [0 @2 D0 r  h; e2 Y7 p
# X+ j& A+ m$ z7 o/ ?: T        public Activity activateIn(Swarm context) {  |8 ~) ?' E8 e. Q' f) @# h* M
                super.activateIn(context);
8 j  i. h# k  M( h/ ^                schedule.activateIn(this);
" h0 g5 I) y+ a; q# A                return getActivity();: O$ [$ p6 Y; x& ^
        }
8 K" \" V, y# I+ \9 a2 C. b( m! }9 T3 e) b2 G" j+ I  Z* e: s9 G
        public static void main(String[] args) {
3 A0 O/ r8 E9 N. h  V! o9 d& {; M                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  f* M& g2 e, e& I4 x8 Z+ l& w                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" V, o9 j; m5 W
                swarms.buildObjects();
6 k- i8 V' b) b5 N# m. T. I2 }                swarms.buildActions();
9 ~" l# Z0 u( Y; [7 V' f+ }8 {: Y3 ]                swarms.activateIn(null).run();+ L2 c( ?$ o9 F/ P' W
        }
9 h$ _( S( l3 H. ~: |9 g8 d, T% j
. `7 `% {7 h8 {  Z# W  E* O! ?; D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-16 04:55 , Processed in 0.021345 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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