设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13046|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * J# d, D( S: L" I# X
$ F) W* {8 a4 S  j: [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 N. g$ A) G0 ~1 c6 u/ J; c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! Z' M, a4 F( v! C
swarm.SignatureNotFoundException
9 i4 c, q3 b& o- Z) l, \& a        at swarm.Selector.<init>(Selector.java:76)
8 G+ J$ y6 m2 u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 A. ^+ u) g! Q) Y: G& Y' f        at ActionGroupDemo.main(ActionGroupDemo.java:67)! @' [8 ?0 a% Z. R

5 M- x7 K/ q6 t, `, |; M9 V, |  t* y
6 d0 O: h# B' z  F/ Cimport swarm.objectbase.SwarmImpl;
+ C" X! B9 r. _& j& oimport swarm.objectbase.Swarm;
9 [0 z% W, E  ~4 C( o: P( Vimport swarm.activity.ScheduleImpl;, Z; t3 y, x7 c4 H# }6 K6 j* Z
import swarm.activity.Activity;
4 j5 t0 `7 T% Z# x) qimport swarm.activity.ActionGroupImpl;+ k7 c/ B6 J7 }+ l" Z
import swarm.collections.ListImpl;) y* c8 t9 E( a8 B
import swarm.defobj.Zone; 4 |  i0 h- d4 A3 `( n6 p% e
import swarm.Globals;$ c9 M( @3 {9 n0 R& m7 H
import swarm.Selector;/ f, x  |6 i! J: I' i/ {
import swarm.activity.ActionGroup; 1 F: T: ~2 C# u' l, i
class Agent {
$ z+ \9 q6 J- |1 v* g' r  t$ N        char id;
3 U% O' ^+ J5 I: J% F; U) O' R% [/ v& F
        Agent(char id) {
: ?) Z, F, E1 ~; R$ j                this.id = id;
4 {: f) o2 A3 z2 H% A) e# B        }4 f7 Y: R1 V# l- O! \0 ]" W! d

- s! y4 m" I" m        public void agentStep() {- {6 [1 \5 J2 h) S$ [: i3 @: ?  L
                System.out.println(id + ":" + Globals.env.getCurrentTime());
! E* w3 [' M9 ^- D  g% B        }
) t7 F+ s- ^' L$ B  K% q7 {}
, |7 ], S% l. r; A
) D8 z, X7 i2 |/ G7 L; i" `public class ActionGroupDemo extends SwarmImpl {
. v+ u0 _! j; g  o/ f        ScheduleImpl schedule;
( |" N" S; N4 z  w' i0 l% _' S        ActionGroupImpl actionGroup;$ u* i' F/ }% Q8 X+ j6 q, N8 x
        ListImpl list;1 N* R. t- O, }
        char Id = 'a';
' x7 Q6 I- G/ w& E" W6 k: z* Z0 ^! P. f! T! k, i; _9 v
        ActionGroupDemo(Zone aZone) {
& {: h% q/ y8 R% @  k& {                super(aZone);
6 W7 e( i# J$ P& i( D                list = new ListImpl(aZone);
$ K+ z  C! c$ t( v+ Q% `: l                swarmSetp();
, J0 i6 f8 R$ I# e% M( ^                actionGroup = new ActionGroupImpl(aZone);
6 e! S1 e! X5 Q* E: E                schedule = new ScheduleImpl(aZone);
# w6 B- x4 X6 G+ W. P                try {$ O2 }) e/ o3 {; q; w1 \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 h$ @4 W1 k% r. R+ j
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 ]! B7 T4 w% H" m6 _                        4 @7 B& J5 r4 N2 g
                        actionGroup.createActionForEach$message(list, agentSel);
0 m! ]4 i8 r5 Z                        actionGroup.createActionTo$message(this, swarmSel);
3 C, [' d/ J( k/ s2 x                        schedule.at$createAction(0, actionGroup);/ h# T5 }( u; o/ V
                        schedule.at$createAction(1, actionGroup);/ H- t* m3 h+ W
                        schedule.at$createAction(2, actionGroup);( c" I/ b& x) _& |+ j
$ Q/ M( J- z2 a; S0 O* d
                } catch (Exception e) {
( C* N! {. l9 C6 e2 o. N! w                        e.printStackTrace(System.err);
5 i) O& H( C! n                        //System.out.println(e);
+ s& X, V& `$ w$ Y9 o! I6 J. S                        System.exit(1);& ?  O8 v4 {+ ?% F" \5 R
                }4 _( \- [9 c' ~+ w
" F* p9 @. }, t
. g; J( c# \! D) a5 a% ~
        }
7 v- D5 n- b. A" X& s: [4 ?& u% {: ~# O
        private void swarmSetp() {
( l/ o$ }9 Z  U) Q1 P6 N                list.addLast(new Agent(Id));
: R6 Z  C$ K/ E2 a                Id++;
1 x. M% j+ X/ h        }
9 z. n( }% h8 O8 M; p9 p# P$ U
% G1 O- A) S1 ?/ z/ N        public Activity activateIn(Swarm context) {1 `( N8 h! n3 k5 \
                super.activateIn(context);0 Y7 y8 z8 o  ?7 y; g
                schedule.activateIn(this);8 Z! M: |, p1 L' z' ]
                return getActivity();( N# m$ V- @4 [, d% ~
        }
/ W+ Q  v& X; k
2 F5 o# c! x9 U/ a9 O2 B        public static void main(String[] args) {
3 H5 n. O) T" f  C* m4 O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 M4 H+ _$ ?6 [4 H( r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( M4 i% }, V5 ]  g# n" u6 R                swarms.buildObjects();
" x% Z3 z- _* `: p                swarms.buildActions();
3 m. d# w4 G+ C- n5 g9 {) ^                swarms.activateIn(null).run();/ h/ S0 X* N! t8 b( i6 y8 y
        }
/ Z  }2 h! ?# k! ^" p8 X, y6 G9 k; f# O0 Y- i% K! a# r" T
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-27 00:00 , Processed in 0.016676 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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