设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4902|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) b0 s% d; {) v

, j% E: v# L" l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, m7 j5 \3 ~# Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' t+ \) H% q7 G$ x) @
swarm.SignatureNotFoundException
8 ?" N! B8 n$ A( N  x' a        at swarm.Selector.<init>(Selector.java:76)6 N2 e  i, f* b6 R$ k( |
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# y2 ^6 |7 C% ?3 r
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! m# N1 `- k# O! Q) B0 }* [

9 j0 i( v/ Y+ Y3 F2 U
( N/ b8 O1 d+ o. }import swarm.objectbase.SwarmImpl;7 |* l1 E0 S* l& y: U
import swarm.objectbase.Swarm;
, a+ w% k1 v6 [  Limport swarm.activity.ScheduleImpl;1 G" {0 o) z8 `" w8 B! T- j( V
import swarm.activity.Activity;
9 W% q* D2 k, L4 R& dimport swarm.activity.ActionGroupImpl;3 v# s6 k( P2 W& Z4 v* F7 r
import swarm.collections.ListImpl;) T! ?, y5 ^, f% B  {
import swarm.defobj.Zone;
9 S- T* j: c' z2 rimport swarm.Globals;9 K; p- `# ~% q
import swarm.Selector;
! u; o3 v5 M7 E. Y( ^) \import swarm.activity.ActionGroup;
+ z6 h! G% H& j. _& Q: oclass Agent {. u% N) v  P* D+ z. Y. U4 A  n
        char id;3 n' n8 V7 D) \* a. B7 M* S1 b
( f5 n; E* B; K7 |, r, T' Y
        Agent(char id) {8 g: y# K) X5 v' O& F1 g* e
                this.id = id;
+ m: c# J' j9 ^, J        }
  i6 B. `3 q+ e1 f6 @! ~( P! I2 W
        public void agentStep() {$ `6 B" h) C: \% b3 j; I& [8 v! y
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 A& l) g" F% `% }3 _5 }5 e  T  J        }( M5 I, a- g( D- j
}+ h' K: B" n9 D5 T% M6 B& E
; f+ ^! l' z4 l  Z; G! q1 u3 k
public class ActionGroupDemo extends SwarmImpl {
+ y, _1 ]0 K. G% F" X8 o        ScheduleImpl schedule;0 Q; y% ^7 E6 E1 J
        ActionGroupImpl actionGroup;
0 W2 z6 S$ v3 V7 g$ {$ ?        ListImpl list;
# F  v6 q( o' W4 W        char Id = 'a';
% }" W% c$ q; N; d* Z# c/ u8 I  h4 j% |: B
        ActionGroupDemo(Zone aZone) {8 B* Q8 m3 V1 x- o' W1 [
                super(aZone);
  Q4 b$ n$ [. d9 @( L' C( \7 _                list = new ListImpl(aZone);
6 C  x- e* i! k- x; |& X" [2 u                swarmSetp();
: A3 c5 V. U& L                actionGroup = new ActionGroupImpl(aZone);
2 Q' a6 X5 B. C% ~  k' t                schedule = new ScheduleImpl(aZone);
5 f# N( g6 l# l# a                try {
5 a# Q4 m7 v5 l4 Q2 z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( O# n9 m* O, f7 p8 d& I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ Q" @, X: c8 Y8 a% k2 \                        
( T1 F- W0 i6 {6 ], _: h9 o                        actionGroup.createActionForEach$message(list, agentSel);1 Q! `/ v1 r: `: |0 F$ F. v1 ?
                        actionGroup.createActionTo$message(this, swarmSel);
0 M8 Q: _9 w! V( b: [* F                        schedule.at$createAction(0, actionGroup);4 l5 b- t9 f! u9 z) Z+ G* J
                        schedule.at$createAction(1, actionGroup);
( x" W0 E8 g6 j& [0 Y2 A' D                        schedule.at$createAction(2, actionGroup);* I  R% }! X1 i$ |

! A/ H$ W/ K% q% |7 q# K                } catch (Exception e) {' S8 x* C  Y5 E3 r0 K
                        e.printStackTrace(System.err);
' k) C* [, M4 q: h% a+ K                        //System.out.println(e);  H5 f' X) }7 ]0 P3 M
                        System.exit(1);( [4 i  {! }& e$ w  G
                }
, y" B9 g; q* m! E9 I4 I+ R: B: H4 f2 e6 L" p4 G: S1 C, E

! }$ V! n3 {+ t/ U        }
# a4 F! a/ `: z! ^5 O) x; M5 J& K  u/ @  j: x9 A. ]% G1 c
        private void swarmSetp() {
/ y3 D9 d$ X0 s  j6 A4 u9 }" q                list.addLast(new Agent(Id));
/ S0 f5 U& T. }3 B' Y6 _                Id++;
: {. X# V1 B6 F8 ^# s0 O, u        }" D, O3 {$ P; [& G2 b

+ Q$ D) z2 ~% p& }8 S        public Activity activateIn(Swarm context) {) w) R: W+ t5 Q' D! [2 e2 Y: T# _
                super.activateIn(context);3 Z% q$ ?! Y3 ^
                schedule.activateIn(this);
' X0 N' A6 j0 @% r8 X) A4 T                return getActivity();% O2 G" J( @7 }& h3 {" F
        }
" H% z" K  C7 p1 P7 J* u% M- j, S1 S9 H
        public static void main(String[] args) {( E4 o+ w4 r* B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: x" T& L/ i2 I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 w- m$ M- C! ?/ E% j  `                swarms.buildObjects();5 Y4 p4 S* p5 |2 H
                swarms.buildActions();
4 l1 A0 i+ x6 j6 k                swarms.activateIn(null).run();
" T. D1 F2 f$ F4 x# W) a. p        }
1 T6 w, A; [! K' C, s* X' W' }$ J' X1 A- Z9 Z, V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-16 14:11 , Processed in 0.030753 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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