设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5227|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# u( ]  w, ^, R, `
9 B* S' ]1 I# P: i, M8 E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 e8 \4 x" A% S2 B4 Z) m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 {. q  G) Q3 v" rswarm.SignatureNotFoundException
* @# J$ i1 |% ~6 @        at swarm.Selector.<init>(Selector.java:76)
0 v  H: _  S) A- h        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' z: \% [# X, m8 c% j7 D, a
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 ?% w: I  H0 A9 z$ X4 J& x4 ^) d" O: @$ o
& i3 ^+ g4 T2 F, x' \
import swarm.objectbase.SwarmImpl;
" b# |! a9 N8 y$ }import swarm.objectbase.Swarm;$ y+ u& P: f/ r% i# @
import swarm.activity.ScheduleImpl;
2 c. I! D+ E9 A4 [* W, Pimport swarm.activity.Activity;
. R0 M9 I" L7 Y: ^! F9 Uimport swarm.activity.ActionGroupImpl;
5 W) r8 Q: h$ G/ f6 P) j& cimport swarm.collections.ListImpl;
3 N& {" F3 ]! j5 S/ ^  ~: C. timport swarm.defobj.Zone; 8 O; [  {' [% A2 O/ `3 ]
import swarm.Globals;/ N  }+ R' E6 j& f( j
import swarm.Selector;
# t9 ]! B, ]3 M* B, g" gimport swarm.activity.ActionGroup;
6 e$ S9 m" d! P6 |5 S( T6 Hclass Agent {
# O4 D# b" E) x3 N! X7 y        char id;
7 p& V- C- A- |4 N' u; [! e3 }1 y
  K, R; H5 r) _3 y        Agent(char id) {; Q2 o* T, W3 S
                this.id = id;- E2 S% W# E, o+ c' g" h
        }
! k9 k& Y. J% p: H9 U* W+ u/ W+ z, D2 R) y4 I+ r! c; n& `
        public void agentStep() {4 u' W( S. I3 o- @/ L
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; L- M% K% u7 I7 R& F" A# m  V        }8 T+ H7 H% o' {0 L& C
}
: {# J& F* i6 x7 E$ |( k% t
6 n8 o( A* Z6 o8 M% Ppublic class ActionGroupDemo extends SwarmImpl {
* s; x% @% U( r: H- P2 N0 u  Y        ScheduleImpl schedule;
9 f  |" p+ E- V( a& U6 Q! h, e        ActionGroupImpl actionGroup;& `2 y, V# g) j' e5 f
        ListImpl list;1 D% u  q5 I8 a+ e! Q4 r
        char Id = 'a';6 [% A$ _3 P; Y# D8 m3 }! K) C
  Y) _/ p" |, G, o
        ActionGroupDemo(Zone aZone) {
2 r" Y: {, |9 ^. t                super(aZone);* R" S. Y( h! A8 _3 M. k
                list = new ListImpl(aZone);
$ c; T7 ~6 ^" b" U1 N                swarmSetp();1 v4 J: L* Y8 F; ?' R/ D- M
                actionGroup = new ActionGroupImpl(aZone);- T7 ~% |% M2 Q- \! n. f; |
                schedule = new ScheduleImpl(aZone);
% {3 y8 H  z6 }% b$ {                try {9 w( Q$ X7 {+ a) I6 I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ o7 H' r1 G( `9 n$ ^: i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) k+ R8 ^( T) X* a9 h, R- Z
                        
# F6 _# A8 V: Q- m: A                        actionGroup.createActionForEach$message(list, agentSel);1 ^* V: J3 w: z
                        actionGroup.createActionTo$message(this, swarmSel);" c) Y0 }/ @3 _5 i/ ?" `/ I7 F: m5 o. q
                        schedule.at$createAction(0, actionGroup);
. k% O" E& E2 x5 L- [' v                        schedule.at$createAction(1, actionGroup);6 t" q& q, @4 l  b
                        schedule.at$createAction(2, actionGroup);
& j! v/ _! S/ @. N. C$ X$ B" l0 I+ b; [* j! H- o
                } catch (Exception e) {
2 y. e2 H" i( }( t1 i' b- S8 F4 f                        e.printStackTrace(System.err);
0 r) w. R5 Y1 ?$ W                        //System.out.println(e);* S; x; {0 Z. N; Y) E
                        System.exit(1);
% H$ N8 e, D. k                }% |, ^( G0 z, o" ~) o  W' w

# W' P& i3 C. R( r4 q% j
2 I  u  P8 s. X6 X; C4 {' m( w+ S        }( q  ^4 i' j$ m9 ^

- s; x1 K0 u5 {- C! ]7 R% ^3 {        private void swarmSetp() {
9 m' V; h( _/ k, h                list.addLast(new Agent(Id));1 G2 V" o$ V' X- b0 v0 I- R' W
                Id++;# D6 A. L. y: D. p; O& \
        }
: t- ]3 H; L0 O) {3 |! y8 ]
' L( C! a5 h  ?+ V! P0 P        public Activity activateIn(Swarm context) {
# q7 ^( S3 Q1 S0 |% M5 G; J- Y' Z% N                super.activateIn(context);  F  Z0 F3 W8 \7 h& ^9 V. \0 a
                schedule.activateIn(this);
: w7 ?% S& R* O+ F4 }. h6 s+ G                return getActivity();2 Y7 w, G* P/ l3 _
        }
( H) A7 G1 e4 i
- O8 m; \, E6 {. s1 g8 _8 P        public static void main(String[] args) {9 h' B9 {# Y& u$ c1 i
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 X( i6 r( H; I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ n4 ]8 b! d# ^: ?' N                swarms.buildObjects();; g$ _2 u: e5 V( s- W0 n
                swarms.buildActions();
! y$ j! _0 S0 O3 G; O5 j                swarms.activateIn(null).run();
6 `/ O; f+ J( c: g$ M7 J+ q# x. c        }
6 O+ [) G7 t" `. \8 e( r+ k
$ t9 {- N- Q! R* _! u}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-29 18:40 , Processed in 0.016281 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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