设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11677|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . q- {1 E5 H, n! P7 x; j5 d
, C7 n9 [: R3 x# |% G% ]+ v1 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" G; ^: s8 M! M0 C; L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' ]/ X- Y5 ?' A4 C1 |
swarm.SignatureNotFoundException  ]( ?) q0 v5 d5 T+ k" q0 Q
        at swarm.Selector.<init>(Selector.java:76)
" i/ D% h+ c/ W! N9 y/ X( p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% w7 h# O# W8 i8 C        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( o/ B4 h- N( Z: I0 `- R
: w7 n+ n8 ~( G) c) f+ O- U. f5 k8 ^1 s& ?! S; B$ J' A
import swarm.objectbase.SwarmImpl;
3 O2 I( q2 e1 |5 G, N6 x& r8 g9 ^import swarm.objectbase.Swarm;
$ a& G- j0 Z: e; d8 t* Eimport swarm.activity.ScheduleImpl;
; f( d1 l* V' g" T8 Z# v: himport swarm.activity.Activity;' p# P. Z6 m( S
import swarm.activity.ActionGroupImpl;4 t! c  j9 s2 N
import swarm.collections.ListImpl;
+ h5 Y, \3 @$ q+ [( s3 [  P& ]import swarm.defobj.Zone; 1 u( W4 |' L7 ]6 w5 \+ g
import swarm.Globals;: m2 t4 B' _, Y5 Q# K# U4 |
import swarm.Selector;
. s) Y3 W5 Z4 S" X7 O6 f0 Yimport swarm.activity.ActionGroup; 4 u) @: ?; _3 b4 r0 S% B- f1 V/ y
class Agent {/ ]9 B* Z' B+ W3 l/ ]
        char id;8 d; J. F! A( Y2 Z9 ?( Q- \! O

1 u& S$ q$ `3 _: z* L4 P! a* f5 X        Agent(char id) {
# m& H2 Z/ t& i) t1 E' h9 ~                this.id = id;* Y2 k( }% X( G- G7 X. T
        }( y" `' i1 D$ I# _' |3 h% P& f

3 |: p4 V) w( h+ Q: r! S: o        public void agentStep() {
- n' W6 B, U, B4 I6 H                System.out.println(id + ":" + Globals.env.getCurrentTime());3 ?6 [& \3 i# _$ U% m6 a
        }
4 O& t# r5 `. p. e}& M$ ]0 N& I2 L% \3 o/ y9 S

% E  C/ R/ X) S/ h4 gpublic class ActionGroupDemo extends SwarmImpl {  G4 S% ^4 V" {; n* W
        ScheduleImpl schedule;
9 q: G: D" P/ h/ K9 |! r        ActionGroupImpl actionGroup;
5 ?) ~  X5 A0 d0 q/ y# e        ListImpl list;
6 F& ~" `1 N* l/ r4 m2 K        char Id = 'a';; ^5 C0 G6 Q; u+ X8 Q& P

) m3 [# |: r6 x% C8 ]        ActionGroupDemo(Zone aZone) {/ h6 @' A) l/ R2 x
                super(aZone);" V$ g3 [) b+ d8 e3 d
                list = new ListImpl(aZone);
: P2 O4 y4 o' o8 q$ E$ T, K1 d                swarmSetp();2 {5 {  K* M0 k
                actionGroup = new ActionGroupImpl(aZone);3 z! i$ a. B' B
                schedule = new ScheduleImpl(aZone);
+ V3 [; O* x2 r5 f3 r9 t/ N1 a, M                try {
, ]- g- Y! d# Y3 M* R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 Z$ n) I9 P# e+ A  L9 U; C                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% O& v0 x; Y/ X/ \                        - ?& O0 Q3 q) }" u
                        actionGroup.createActionForEach$message(list, agentSel);
# ?6 r3 J' D" u9 U                        actionGroup.createActionTo$message(this, swarmSel);7 U, l- {0 N8 d9 ~  [' f
                        schedule.at$createAction(0, actionGroup);  M) g& n6 Y( o3 T0 j
                        schedule.at$createAction(1, actionGroup);* r( s: D/ Q0 ?$ B& ^8 u3 B) T
                        schedule.at$createAction(2, actionGroup);
$ P! {; A; ?4 N
" ]; {; Y6 D/ X$ ]0 s4 U0 [$ l7 \                } catch (Exception e) {& m" S' s' b& d  _
                        e.printStackTrace(System.err);
. C2 N) n& F& e2 g                        //System.out.println(e);
. Y$ F2 D1 |8 r                        System.exit(1);
4 \  h3 b) O: w# P6 b8 T* z                }
0 V# ^9 ^/ n0 z+ ^6 G  a) [; o$ y  G

4 ]9 \) x/ `9 V7 C1 ?3 R5 ~) N        }
, i( S& S1 M0 K* Y7 N& D+ u: K% X+ q. ~6 }9 O. h! J
        private void swarmSetp() {
1 ]0 F  ~8 e+ O$ q+ d  s. o/ N                list.addLast(new Agent(Id));
5 Y6 B, Y9 d7 o$ S# u6 P5 ~                Id++;% I2 ]6 k1 T  N' K
        }. Q/ X" q5 Q  j  |: i4 l
" e& S4 n4 T1 ~- s: c, Z7 @
        public Activity activateIn(Swarm context) {
& M9 A0 O; G8 N                super.activateIn(context);5 Q3 H: r" P% e% s% F
                schedule.activateIn(this);
0 e2 u4 u1 N/ ]" }, F4 i                return getActivity();
* {3 \3 ?) h: l" P( f% j% i, y        }1 [) T/ \1 L, U# }; Y3 n

1 l7 A1 [) k* x+ t3 B% ?& G6 Z        public static void main(String[] args) {* K5 S$ X- |0 k; N1 D6 S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- `' e6 j" B' K0 Y, z; |
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 @8 X/ ]$ v/ G8 [3 R                swarms.buildObjects();; w* \/ o0 G/ P& b: ^% j
                swarms.buildActions();! V+ G6 h5 p* Y7 Q% _3 n
                swarms.activateIn(null).run();
$ s+ a1 N4 v6 \# B8 a        }% _/ [! w) K5 h1 x7 ]

* f+ w' J; v* {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-18 22:02 , Processed in 0.015093 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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