设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5386|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   q3 D1 P. Q/ G9 \( S& O
  s; e5 p0 _9 G8 E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" W, K; r& X2 \, j" H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' B; _% _7 \; A# J: q
swarm.SignatureNotFoundException$ r! _' Y5 H9 Y; \: w9 i* f( c4 s
        at swarm.Selector.<init>(Selector.java:76)! E; L. {& q( n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ P' ~& a) u6 x& a        at ActionGroupDemo.main(ActionGroupDemo.java:67); o6 r# z9 Z& c/ G& ?# y

4 R! D2 I, o6 x& x3 Y: O* ~. n
- ?6 f+ @% C: r6 t5 Simport swarm.objectbase.SwarmImpl;
& J! Q" ^" H$ W9 bimport swarm.objectbase.Swarm;0 Y1 s. |: X5 R0 u- `* F7 B: B
import swarm.activity.ScheduleImpl;
  l4 K, n4 ], l2 P4 qimport swarm.activity.Activity;0 F; C1 V5 k: X( ^( |! I" \+ N
import swarm.activity.ActionGroupImpl;
) c8 o% y* c- X0 `import swarm.collections.ListImpl;/ \$ v, |  F5 E! C' F; }' T
import swarm.defobj.Zone;
$ c5 K- R) q- u( Rimport swarm.Globals;
, D- ?2 J8 f& V! b2 y1 _/ Uimport swarm.Selector;
4 [0 U1 M1 g" _9 ^import swarm.activity.ActionGroup; * j6 B7 i  y% z: k/ h
class Agent {- A: N: p* q2 l+ ]  j( z; X
        char id;# }" ^) e: \  m" M7 m5 N

* d1 T4 j. L1 I4 a        Agent(char id) {$ P2 y& z. O7 R6 \2 H& ]
                this.id = id;
& n, I, Y* X* E- [# t3 ~        }0 U; a; s5 u, @
4 k. |' z" G3 Z4 q& V1 n7 ^
        public void agentStep() {5 |$ L! |: I  `+ f3 x/ {# ^; Z
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" }0 Y) s" V* m( s        }
# x6 Q9 p& c7 b( i}- z+ ^+ o7 f& B" r* H  \

. }( ~, Q! |0 V4 Tpublic class ActionGroupDemo extends SwarmImpl {  D5 z4 t) |& Y3 s$ z& C/ E
        ScheduleImpl schedule;
- W# L! ?) k/ ]! I7 Y6 s8 |  S2 t& S        ActionGroupImpl actionGroup;
: A( P. O1 N/ `, a& ^        ListImpl list;" z4 N$ ]6 {! |( I2 @! n
        char Id = 'a';5 `& T, q/ \- j# u( y3 I

" c) u. I0 j. C0 s" q        ActionGroupDemo(Zone aZone) {+ S! K4 P% i) k2 |. }
                super(aZone);3 [, J, q$ [5 o2 b% s
                list = new ListImpl(aZone);
/ Z! M$ ?4 ~$ Y7 s  P                swarmSetp();
5 u& ~4 Y3 [2 ~/ j0 H1 J                actionGroup = new ActionGroupImpl(aZone);
, K. H- t# m9 K2 r( z                schedule = new ScheduleImpl(aZone);
0 L6 _, l, s2 ?% q                try {
& h5 q9 |: O% P8 s8 j* x/ b& i# w! E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 m$ [& w; y4 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: }4 e( w+ G9 ?& ?" ~& Q% s                        
- a! }( I( I6 q* Y$ t1 q$ r' X4 r                        actionGroup.createActionForEach$message(list, agentSel);
) I6 G. @1 r' d' l$ h                        actionGroup.createActionTo$message(this, swarmSel);
% J, F2 @* `5 ]- S5 B. E& [                        schedule.at$createAction(0, actionGroup);
3 x6 F, K1 }' X                        schedule.at$createAction(1, actionGroup);, T: o3 s# Z/ W
                        schedule.at$createAction(2, actionGroup);
% ~! ~6 @# O1 M; U3 |
2 ^: t3 U) @0 X5 N, M6 C/ M5 B                } catch (Exception e) {
8 w% T8 [6 B  e, {  H* G- ?' Y                        e.printStackTrace(System.err);9 E+ ^7 L" D& }5 f8 y
                        //System.out.println(e);& g5 v- M7 y  ^+ v
                        System.exit(1);
9 f- b( P: `6 d! u  o# t3 y                }& Q" ~% l- t& H
& _2 h; v) A# b' S! H
$ ?: h0 p6 X4 i. q- E. }+ B) L
        }. i2 y# K# O. p/ `9 _! W# v; v
# ~+ ^, B9 X& F8 C4 A7 e
        private void swarmSetp() {1 J; u+ }1 n; k! d8 x
                list.addLast(new Agent(Id));( g$ U: [6 u8 S$ [9 v$ x4 X/ h
                Id++;% i2 h: M( [/ K! y: T5 K5 S8 m$ c0 G& M
        }! h: v* q2 Z% q" f1 V
, a+ m/ h  D! g! F4 q' [7 ~
        public Activity activateIn(Swarm context) {; X, ]( C* n& W7 ]) v
                super.activateIn(context);
" R$ y. ?0 v- O! u                schedule.activateIn(this);
0 a' }0 R; g# ]                return getActivity();
, ]  w: y& h9 v" s$ R0 a* m        }, A: L7 ?( t; \! F) W
3 x* r2 ~- Y7 R7 o4 n) Z
        public static void main(String[] args) {- S' @- z  z+ C
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  {, `* c: C! E% `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" t4 z7 T) X/ H5 O- X3 [5 d$ B6 V$ C
                swarms.buildObjects();
+ w7 [- D3 @$ i                swarms.buildActions();+ S- E2 o" s* I' _# T, m2 i" Z
                swarms.activateIn(null).run();
! S  X% Q: c0 @( [        }
& w* J, W- ]! Y  U9 H
" j' G* c, Z! a* ]. [}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-7 07:36 , Processed in 0.019058 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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