设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10597|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. V: d1 o! @; c6 `% [, A
4 T. J  Z/ t( X7 T! _- \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 }$ i$ @2 W  s3 ~0 @/ n- D: e. q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# g& U, w6 N7 x7 Y. S6 M6 pswarm.SignatureNotFoundException) l( R% o% G) I* ^% k
        at swarm.Selector.<init>(Selector.java:76)" L  {/ Z4 [- E! }9 i- b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 p& R3 d$ X  I4 d6 L& @, O! R        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 h0 E: T4 i2 B$ o! d6 d. h9 u5 l: c
" p' J* i4 b! ]0 u( ?8 g
1 ]: y: P3 P7 f7 e  o
import swarm.objectbase.SwarmImpl;/ e/ ]1 X  Z; u0 ?% \
import swarm.objectbase.Swarm;5 P0 b% ~" ^! O9 @3 q
import swarm.activity.ScheduleImpl;* s5 `. F, R) J3 T6 o  y
import swarm.activity.Activity;6 `3 |+ k# s. T# G9 z* t. t
import swarm.activity.ActionGroupImpl;
( n9 R$ m: R+ ?9 Z3 q% ^import swarm.collections.ListImpl;  N6 J+ i  W) q% l0 c$ V
import swarm.defobj.Zone; 3 F* P' O7 t5 D1 p  I8 O+ \
import swarm.Globals;% L, U8 Y' O! v: A2 w" ?
import swarm.Selector;
8 f. `( }- o) [# ^0 Rimport swarm.activity.ActionGroup;
- \; k; H$ r# V% v7 {class Agent {
- d2 Z/ e* G/ u. G3 L6 c" q        char id;" J! t1 f2 I; J9 B
- G* U* |0 I/ P9 d% n- G: a* Z
        Agent(char id) {
" P" l  `7 n2 W2 l& A6 |                this.id = id;2 b" G0 z9 s5 \4 G7 [1 m
        }
4 a2 q1 Q3 r' j/ T) o
* m) g( h4 w" h6 S        public void agentStep() {! q2 Y) c; h: R4 Z* e  L4 r* `
                System.out.println(id + ":" + Globals.env.getCurrentTime());
! |, N4 u' C5 W' ]% F' o6 _        }; W* H9 o. k, q6 B) Q7 [; C# K  `
}
' ?$ ]: ~# s: a) F" H
1 Y2 }; m/ S0 Y- w& _& Lpublic class ActionGroupDemo extends SwarmImpl {
$ }8 l$ U. b" q: f# b$ V. J        ScheduleImpl schedule;
, V3 P% H# |' ?8 ?! Y* W/ O6 f5 e) @        ActionGroupImpl actionGroup;
4 Z* `' o- Q7 _1 J& G+ w, Z- B" e8 O        ListImpl list;& i2 K' M# S2 [: n
        char Id = 'a';
; _+ H; u' x$ U: l" i  O  N8 K4 |: \5 I0 L. q
        ActionGroupDemo(Zone aZone) {
6 p; O4 N8 K7 ?; x# _' s& D                super(aZone);
. |, ~: k& {; L2 D                list = new ListImpl(aZone);
# n4 q7 d1 e; s" h1 I8 y                swarmSetp();
! E/ [& f, G0 s- a# {- r' }9 L                actionGroup = new ActionGroupImpl(aZone);
6 s' h/ E9 U5 L                schedule = new ScheduleImpl(aZone);
. _" a' ^5 p5 ~; N                try {
  w; g5 s- I  Q, G, [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 N8 [5 \. P  l# |" ]# }8 q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 w0 ^% p$ e7 G1 H/ b! ~4 i3 X                        
5 g5 ^0 j  A  H1 J! k0 P                        actionGroup.createActionForEach$message(list, agentSel);
+ P5 `: I0 J9 Q7 }% ^" ~: f                        actionGroup.createActionTo$message(this, swarmSel);" ?& ~; L1 S& [. r5 m( W# g! N; Q
                        schedule.at$createAction(0, actionGroup);
' P4 }* _( P+ V1 \' Z* e& e" x  Z                        schedule.at$createAction(1, actionGroup);9 {* X2 {5 G6 `! M/ l! ]' {
                        schedule.at$createAction(2, actionGroup);
# A, I5 Q: ^8 W+ v2 ~1 f! z; f( f4 G: z: h/ @
                } catch (Exception e) {
( g' r6 b/ ^* M% h5 V                        e.printStackTrace(System.err);* N3 q' |$ V6 j. f' ~* d) j. {
                        //System.out.println(e);. k) |% D5 n5 D- m1 W
                        System.exit(1);
. H& H, i+ {* I  E2 K1 _# i- x$ L" P% L9 [                }  E* }, ^1 s0 M& i% }2 W# l- s

( K% \( d$ k/ @( f
1 {$ p+ b; Z! T; j  k* y5 @! T        }( L) @8 A; c; ]) k1 f7 J  D- X4 ^
! M9 e: w( w8 m# L
        private void swarmSetp() {  i, x8 n# b" c% M: _. X8 H+ D
                list.addLast(new Agent(Id));$ g( N1 p* C) S$ Y) r
                Id++;. I6 S& J# o+ F0 }
        }/ I, ^- y4 S+ I+ A
; X  g# o2 X8 `
        public Activity activateIn(Swarm context) {8 q6 B! s5 N  q% e3 E% o
                super.activateIn(context);/ e- Z$ |; p# o( H, R/ Z
                schedule.activateIn(this);
, |" f# f* r# |                return getActivity();4 Y2 D( h6 o( H5 ]" |+ p, m% c
        }" ]! F5 b- b2 |1 y: p3 ^7 e
) G, U  x' E, m1 x. _3 t, L
        public static void main(String[] args) {, {+ e- y5 k5 T9 w$ g) [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 W. D6 I3 ]% Z, S* C" m! Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% s. y8 O' J5 L4 q7 f$ M0 ?                swarms.buildObjects();
! D# G! w* _0 y3 `9 z/ l1 d% V- a8 }                swarms.buildActions();
' X7 u# A4 H  S2 {, O- S                swarms.activateIn(null).run();
* b+ S+ w: |* z, ?3 s3 e+ U- B        }
9 U9 i0 Y2 |8 ~: u+ e4 p/ J8 F
: r/ W+ f6 t# q# s/ \7 ^& M: P2 J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-18 04:11 , Processed in 0.019570 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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