设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10601|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' g; ]& z2 ]* l* B# I7 A+ R% L  ?/ x
8 h6 l4 B  @1 ?! |9 U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! A5 I+ n8 U3 R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 M% ]8 J: Y2 T/ w( v$ N2 w* M
swarm.SignatureNotFoundException: Q3 Q) r7 `( i& V2 B1 j1 u7 g6 G
        at swarm.Selector.<init>(Selector.java:76)
7 ]7 r# l  O9 i, ]2 Q; A) x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); u6 ?% n) W# i2 q) |! u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, ~) c! W3 J! [+ U8 T4 @; B) v6 m' }9 I

& P2 F+ v( @. \2 n9 Wimport swarm.objectbase.SwarmImpl;/ I, m" Y9 y$ O( t9 F( P; t
import swarm.objectbase.Swarm;
1 l. ^! Z/ U9 {4 Gimport swarm.activity.ScheduleImpl;
8 T) x! i0 t9 H, J8 nimport swarm.activity.Activity;
2 j7 D! ]0 H  a- D$ ~9 e7 Vimport swarm.activity.ActionGroupImpl;
. l8 M1 r: L* [6 e( K% d9 C4 Nimport swarm.collections.ListImpl;9 b9 u0 R8 p: e# n6 ?5 v. i
import swarm.defobj.Zone; / _8 G4 R8 t9 `+ z
import swarm.Globals;- o0 {4 l7 L1 Z
import swarm.Selector;6 T7 a7 v  m0 W& x/ s; P
import swarm.activity.ActionGroup;   O7 X( J2 |" }: F) R
class Agent {
5 A+ ]- p! O) b4 T1 E4 _0 A        char id;* p0 Y, z4 S: X4 N
' \. W# j6 c4 O  L5 T% e
        Agent(char id) {# r3 r' |, _% s% [& s  O/ u
                this.id = id;
+ S4 O9 b6 d* _( @. X  i3 l        }
) a: g2 K- m3 D# w
. f+ {$ A% H2 G! J9 a2 C8 y6 x        public void agentStep() {
- u5 L9 ?; ?$ ^# e$ L2 w& G                System.out.println(id + ":" + Globals.env.getCurrentTime());
: }1 q. {2 [5 X5 Y  T" K2 j; M        }2 ]5 N: s  e8 a! _) w
}
, @5 t% N" v* @6 M, A- h( a
5 z! d& [  @- Q2 J# opublic class ActionGroupDemo extends SwarmImpl {5 r* y5 H& ~) D  L# O
        ScheduleImpl schedule;3 }. g6 I1 p$ m. e3 S3 ~+ M" q
        ActionGroupImpl actionGroup;9 g" t  k; ~& ]* G: x
        ListImpl list;
0 Y/ D2 }5 n* g$ ~" D) c        char Id = 'a';( P  \% I( ~1 T
) e, A! T& d  ~  g
        ActionGroupDemo(Zone aZone) {* p2 i; t3 K* I- I3 j
                super(aZone);* N" K+ ?0 a" c4 s
                list = new ListImpl(aZone);
  X# N6 i0 ~' [1 {1 t( y                swarmSetp();' i/ e' m0 d  n$ M3 Y
                actionGroup = new ActionGroupImpl(aZone);# G+ i# Y. t& T( b" s
                schedule = new ScheduleImpl(aZone);0 J) w) Z$ x% h
                try {
" }6 l6 p( K. O& S" [" t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  @: l, z0 [9 ?. j% Z4 s+ h9 f
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. @1 U1 s3 l  G  p  k" I5 f                        & [( x- ~, q' }- e9 r; W
                        actionGroup.createActionForEach$message(list, agentSel);& Q+ w7 A) x) d
                        actionGroup.createActionTo$message(this, swarmSel);
3 Z" |, {, K* y' u: X2 I9 M) G                        schedule.at$createAction(0, actionGroup);
" L/ z% c3 r( s4 D                        schedule.at$createAction(1, actionGroup);' W* Y) T/ K0 ?) Y
                        schedule.at$createAction(2, actionGroup);
5 N( @+ D  N6 R) A4 W0 f2 ^" ?& Q- h
# s/ B/ _$ c% z+ k! e+ r; f                } catch (Exception e) {
& H; ^  U* a; ?7 u9 _                        e.printStackTrace(System.err);" b/ c8 [" C3 {" g$ \
                        //System.out.println(e);
$ g7 P4 O! L, i) h4 I. N. L  J                        System.exit(1);3 }' o% }: k; A% ~! Y- M% x+ o5 s
                }
& |  F- }2 _8 n4 l$ T! I- c2 g7 K! M$ d6 J* r1 r- i

' s, [* |/ J: Q. b        }
! L5 B  |8 x/ P3 M, ~  {3 d! @$ e, F+ d
        private void swarmSetp() {
( |" S3 O" y! t                list.addLast(new Agent(Id));1 x2 C  L, A  ]9 M: i+ y
                Id++;6 z: H) q1 r' r8 S  W' X" S
        }' Z6 `( }! Y- R+ @' E9 P1 g3 g

* M! Z3 a- m- S; L        public Activity activateIn(Swarm context) {
8 W0 K% [6 u. g* ~( Z2 m, U                super.activateIn(context);. a2 ]7 ^- ~  {6 U
                schedule.activateIn(this);( I; q* a- D' G
                return getActivity();1 y! a# H' |0 W+ U2 z* K  \& t
        }
5 o0 l+ B+ A. P  h1 [5 N( e( p4 v, o' a% x# Q. l
        public static void main(String[] args) {
* y9 @- {5 l& @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 |( G  s  e! G  I, Z7 R9 X
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& M: G9 X5 j% d) \  M                swarms.buildObjects();
/ u5 _1 v% |2 Q1 P! H2 N                swarms.buildActions();
' c( J, n; x1 ]8 H' Z* W6 Z$ J: R                swarms.activateIn(null).run();/ W; l: x/ X5 Z  \9 c, R
        }# m0 J$ P! M! N" Y! a/ p
/ z8 D. d4 |. G8 V/ e' r# ]) S, W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-18 06:00 , Processed in 0.014531 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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