设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12848|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 ^! \: r6 O' h* q" b, t% Y

+ P' P& e% D* \9 Y0 }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 U, t7 _/ K7 r! Y: F6 ?* m& H
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* G2 o1 J) c2 c: Cswarm.SignatureNotFoundException
; ~* R/ |( {* d) d; G; l* s  i        at swarm.Selector.<init>(Selector.java:76)& z0 @0 x# O/ a* n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ @* L3 A# y7 ^3 A" W# u        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( O( Z' |, M! p$ |: Y& K+ U( t1 a$ n4 y$ S1 z9 Q: E0 R
' v4 h, J4 K! F, `
import swarm.objectbase.SwarmImpl;, W: `6 x( U, e  L  p! W& O
import swarm.objectbase.Swarm;
; f" f+ `6 ?. w2 limport swarm.activity.ScheduleImpl;
4 }5 s  l/ I" E4 z0 {, S/ `import swarm.activity.Activity;
# X  h9 z! e; E& q1 i, K9 _import swarm.activity.ActionGroupImpl;  o- r. d9 q/ N
import swarm.collections.ListImpl;; _* h( `* ^- F  G$ C8 c
import swarm.defobj.Zone;
4 W+ d, s  t& j5 j+ G/ mimport swarm.Globals;
( `- v/ e: j' j$ A# zimport swarm.Selector;
" w* N) n6 X7 Simport swarm.activity.ActionGroup;
7 s, s9 S6 ^  G5 sclass Agent {
) D, ^% H) C; M! x1 p$ U% y( V        char id;
7 T6 G" u' }, m! X, K
0 F; D& T2 D# i( o, ?; ^" p        Agent(char id) {; x' q4 U. X; }! O8 K6 @' Z2 h
                this.id = id;% k# K1 ]7 k4 [. v, [  b7 h
        }
' C1 A  w) x* X0 q; {0 p
4 ?3 i+ r* e9 I9 X$ L$ c- f5 t        public void agentStep() {
& `+ v5 L& ]9 }- U4 B* r                System.out.println(id + ":" + Globals.env.getCurrentTime());
. y+ U6 D' L0 c/ \7 N2 J        }* K* L/ u- V4 Z, k
}( c$ f" a$ ?6 q/ K6 t2 m& I+ w

! i% W' d; f$ l4 k  L3 _% E: Y. T9 ypublic class ActionGroupDemo extends SwarmImpl {/ r0 r: J& t% s7 X; A# j
        ScheduleImpl schedule;/ U9 ?6 c2 N2 H: K
        ActionGroupImpl actionGroup;" g! C# C* Y$ A/ z; ~* s' e2 \+ [: u
        ListImpl list;
# }) O! U5 X/ L  F' Y1 m$ _        char Id = 'a';
' r8 \8 o( U0 u. Y/ V& @$ I7 a; v* S# i
        ActionGroupDemo(Zone aZone) {
5 T; [+ z$ ~1 t: [: i2 O* r4 y                super(aZone);0 H& o' n" J2 I6 i4 M+ ^2 ]- `
                list = new ListImpl(aZone);
/ m! |/ J. y* l                swarmSetp();
, G0 T" G7 i5 ]$ K8 T, ]% u                actionGroup = new ActionGroupImpl(aZone);
( x( l  A$ J0 U: @" g. G0 u6 }( E                schedule = new ScheduleImpl(aZone);
( i) }7 e! D& Q$ Y5 R/ x( y                try {* n+ U: B0 \+ H& z: \+ ^! U6 s, r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& k# n6 b& T5 N+ N& _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 X, l  Q" `* e8 P7 {                        
5 ^0 Y8 ~# O  }" M8 E; Y                        actionGroup.createActionForEach$message(list, agentSel);
) C+ D' f: X! N                        actionGroup.createActionTo$message(this, swarmSel);
1 A5 n4 D' [5 k% z/ U: i2 @                        schedule.at$createAction(0, actionGroup);
# S6 `# d& g) i& H) Q- P6 ^3 i5 P                        schedule.at$createAction(1, actionGroup);, K& B) e) A# e2 O
                        schedule.at$createAction(2, actionGroup);
4 Y. ]9 \. R- e  M2 k" |/ J) S' `' }
& g9 R* V! d( f% q& Z                } catch (Exception e) {
0 i$ Q; X& u5 o8 p$ h1 _/ e                        e.printStackTrace(System.err);
: R6 x) g) S! B) J: D# c. }  }3 y                        //System.out.println(e);
$ b+ l2 o- K# v) B5 w  _: x                        System.exit(1);
* Y; |% i3 P9 ^2 P                }
8 {% z' N# ]' Y
# z2 |* E- n, Q+ M* f" U+ @% `, a& U/ J1 O5 Y6 J4 o& ^
        }8 J0 b8 d5 l6 s2 Z- ]# X# B
" D; H6 h0 J% b+ N% y! R! t
        private void swarmSetp() {2 J. O5 `6 u5 R" H3 Q% y
                list.addLast(new Agent(Id));/ Y' z# z2 M2 J" ^4 M
                Id++;
5 \# ]: M7 I9 D. o5 h# s        }/ e9 o$ ^! t8 t0 K, z8 k. v7 x
& x) O/ d6 \2 _! [' ^1 r
        public Activity activateIn(Swarm context) {, T: r& v" [. x  l7 ]
                super.activateIn(context);
+ w% c$ |" [8 i                schedule.activateIn(this);+ h% O6 i# Z# b3 }! v% y
                return getActivity();6 x+ }. @+ J, m" n& \- I# `* `
        }2 B( v: S# v% K! o

) D7 G# d' Q$ F$ Y  d$ O, }        public static void main(String[] args) {
* G/ s  I% ^" Y4 i$ d6 ]; A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 q4 y& W, j+ K) c- Y( r8 m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ u  A3 i3 D. [+ ]% e7 o! H                swarms.buildObjects();
$ U! @1 n$ K% r3 Z9 W                swarms.buildActions();
5 d- R' b! T% f                swarms.activateIn(null).run();  S! E( l" @0 H: k/ D
        }" ~- i0 x1 f2 i# q" u" c( D
+ j& D  d$ V5 n: ?0 P: b$ r1 \
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-21 05:45 , Processed in 0.019888 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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