设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9842|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# ~( J& p8 V7 Q# ?2 g/ P" s; M. @  b" r" J6 G. m
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; R  a( n7 q3 Z' _5 E( O: @7 w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( U6 {# E. o- w' G1 ~1 `swarm.SignatureNotFoundException' W. u  B& V& ]' i( Z. _
        at swarm.Selector.<init>(Selector.java:76)
2 N. b/ }# E; e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 \: |, u% s# F3 ^3 c2 r2 i5 a, R        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ |, H, @5 @6 ~7 }
7 f1 l4 ~2 V% C$ v& M5 b( M" ]: l( e1 T
import swarm.objectbase.SwarmImpl;
  }# `% \, [. |/ e9 @8 ~import swarm.objectbase.Swarm;
( J$ ?" Y' [" A# R1 u1 limport swarm.activity.ScheduleImpl;
9 L4 `3 Y. h( e  \- p6 |( b1 wimport swarm.activity.Activity;
- B' c8 _3 o) q/ B2 [, F6 ~7 T# Qimport swarm.activity.ActionGroupImpl;' v: U) v: u* e- R6 _: G/ R+ I" m
import swarm.collections.ListImpl;
& J3 L/ H) N+ t( N- a9 h" ^) |# z# timport swarm.defobj.Zone; 2 ?. b, ?  E, U( c' }
import swarm.Globals;6 a1 k0 s* `0 _0 q
import swarm.Selector;# e4 N, x  [# |9 R0 g0 ?9 E; r
import swarm.activity.ActionGroup; ! r7 x% y) R1 u, X- q7 ]
class Agent {
, L0 x+ N# W- ~7 R$ b/ G        char id;1 d$ q5 o$ M% ]% H  D8 f: u. \
2 x  D) c8 R, k3 q+ z
        Agent(char id) {
' y2 H3 z! F6 A  r" m                this.id = id;
  N8 z! r$ Y) J) a0 F4 w' H$ G, l        }
8 a* h, R& P9 w' w7 H( Q4 r! c; L- |: ]5 y5 `; G
        public void agentStep() {( W7 B% F6 T# K
                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 i5 p) B# I  J        }. i& Y& `$ \& Z0 \) ~
}4 C" a/ G& [9 U0 g; d( I' N

. ?/ ]1 U/ ?* x. Q1 p4 f% N0 |; Jpublic class ActionGroupDemo extends SwarmImpl {
6 G/ L: y. Z0 s! ?+ O        ScheduleImpl schedule;. H1 J7 _+ e# w! ^. b2 r+ U
        ActionGroupImpl actionGroup;$ E. ~3 Q2 F- g
        ListImpl list;
7 o% m/ A9 W1 a( E        char Id = 'a';! W+ o/ J2 q0 H: t
0 x1 w- v! H5 P& s# `1 O4 e( R# W
        ActionGroupDemo(Zone aZone) {
+ b  A3 l/ Q( K                super(aZone);5 I- T  n+ J; T7 m
                list = new ListImpl(aZone);. A. e0 ?2 a: j5 ?6 p  P3 D
                swarmSetp();
9 [3 V5 s+ U# ^& `8 i                actionGroup = new ActionGroupImpl(aZone);6 d) s# Z  b  F% Z! q- M; m4 M8 q4 H( V
                schedule = new ScheduleImpl(aZone);
) G( r/ J/ v. k                try {! S6 Q. _- H: |3 {# H+ E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! {! R( X0 E3 R9 m6 B8 W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 @+ T. }$ {# H% g) f                        
( d; m- b) B/ E3 ^                        actionGroup.createActionForEach$message(list, agentSel);
4 h  w% z# X/ k                        actionGroup.createActionTo$message(this, swarmSel);
7 F2 l. m% m- K3 ]; m* ?( R- n                        schedule.at$createAction(0, actionGroup);
2 b' I8 w- T, ~: O) s9 `$ B                        schedule.at$createAction(1, actionGroup);7 E0 ]  ?! S+ ~! [
                        schedule.at$createAction(2, actionGroup);
9 |; X; j/ J; E) Q1 _& N; b6 N% b7 H( G% I+ g+ d6 e8 K6 `
                } catch (Exception e) {
  ~9 f( t- c, F! w                        e.printStackTrace(System.err);+ z* F" ^" H1 Q4 J- z4 Q- q1 q6 z
                        //System.out.println(e);
$ y% V& z0 _1 |# L                        System.exit(1);
. Y' Z) y2 ~- V0 m                }
( A2 B3 K$ @  m7 p( ^$ Y* [/ c9 s* c" J( V

$ ?" N# f+ d8 c5 s) T- l( x# N7 u        }
8 Y( H, ?4 k% n/ \3 v0 W7 o# n7 S% j" J" K
        private void swarmSetp() {! R0 s( B' Z$ c3 g+ M
                list.addLast(new Agent(Id));
2 E- P4 s9 M) b" ]: y4 ^; H. g                Id++;6 O8 o9 J2 {& F) w0 }
        }
" ?4 X9 r& r% q5 s; y( {( q1 V& x
" Q- [  ^+ S; q  B. R        public Activity activateIn(Swarm context) {$ W- y% L0 r2 ~* g( r" A
                super.activateIn(context);
0 h/ r8 \. o' C2 v2 {$ ?+ i                schedule.activateIn(this);; R0 j) s6 X3 w
                return getActivity();5 }9 P; z& C' L3 D0 s4 ~7 R
        }1 b" }* d* R% i5 r
( L2 k7 J3 T( B
        public static void main(String[] args) {+ o' U6 A4 U9 u3 i9 y3 @; {5 \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( i" D( d. `0 U6 C" ]! I% B0 M3 c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 p( W  L2 X& w8 o/ @2 B1 T, {
                swarms.buildObjects();0 b* W2 G% H" i' e7 w
                swarms.buildActions();
3 ^7 R; C. l5 S1 i( H4 X0 l                swarms.activateIn(null).run();
/ i: M9 h  v. W3 x7 ?8 y! p+ `        }
( Q- Y& K" l8 P& V/ k! Y. K! q2 Q9 M& {3 t. C3 L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-25 00:51 , Processed in 0.020784 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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