设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8210|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # \, ~& D, u/ E7 q
4 R) ?* F+ v( H# m7 F$ I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  a% D& g6 Z, d: j& M1 g以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 y/ G' ?4 b9 F; H9 @swarm.SignatureNotFoundException' \( ^7 t" z* |1 T* z7 Z
        at swarm.Selector.<init>(Selector.java:76)+ {- V/ y  ]0 C2 M" X* u, p$ J2 l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): v& m' R4 ?6 w  u: o0 ]. H  w
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' ]6 a& P3 r8 V9 I) M9 E" o" S3 ?) p3 [
1 K7 o* a2 m7 c- q5 G

* _  @3 ~# {$ n! q6 N, Y2 Uimport swarm.objectbase.SwarmImpl;0 a% ]" o$ h  ^  U' a2 ~9 ^' l6 U
import swarm.objectbase.Swarm;
6 C7 b3 r# Q( }3 Qimport swarm.activity.ScheduleImpl;0 L8 {, R# v$ Q1 W) H
import swarm.activity.Activity;, g% l" w% ]" _3 t7 F; r5 K
import swarm.activity.ActionGroupImpl;; L+ J8 y% @+ z" h# R+ g" [0 ?$ a
import swarm.collections.ListImpl;! g2 s0 A4 S/ P# `7 h' N
import swarm.defobj.Zone; : I. y- B3 X+ d' }; S
import swarm.Globals;# `* S8 h( G# `" P
import swarm.Selector;) f  N5 z0 k  f3 ~
import swarm.activity.ActionGroup; 8 j% |( p$ r# m3 X1 K; x9 u8 r% t
class Agent {) P* e+ {9 [/ g; x
        char id;
4 H( C+ Z) P- ?! v% W8 j  H# q& z( u/ ~$ S
        Agent(char id) {/ D3 u* K, |2 c7 w
                this.id = id;
" y( J) n+ |. h        }
8 x5 r- l4 [" G" l
$ f$ Z/ m$ `) r  d        public void agentStep() {( C( T' R2 f/ n& w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 R- J" i7 d) \) \        }
1 A6 E5 v% ^" K}2 h" o4 \7 \+ {) l4 f, w2 Y/ W: K" g

3 h( h, O4 R/ h) Ppublic class ActionGroupDemo extends SwarmImpl {
: V1 k$ g4 r1 {. b7 C        ScheduleImpl schedule;% y4 `# \" N2 L+ |9 e! Z
        ActionGroupImpl actionGroup;
. T5 `; C6 o* b  l        ListImpl list;0 ?& I( V' z+ K- k
        char Id = 'a';
. V: Z; a0 A  P( ?: K* r4 A) J1 H8 s/ i. ?& I! @6 u: j# o
        ActionGroupDemo(Zone aZone) {
/ K" f# Y6 Q% z$ C( t                super(aZone);
9 n% F9 @! V  ]" f/ j  Z                list = new ListImpl(aZone);- G/ N4 P! H* b) {4 H1 m$ m+ W1 e
                swarmSetp();5 o/ G/ b! A8 a. Y6 S+ @
                actionGroup = new ActionGroupImpl(aZone);
5 ~( G( n/ R; f' d& F8 r: h* m                schedule = new ScheduleImpl(aZone);7 U3 N; o1 ?, n/ _( c
                try {
- u+ U$ m( e! M                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, L. f7 `* v' u- Q- n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 K4 b4 d0 ^- {' x! d% r2 V& q
                        
8 ^" y$ {  ^+ |8 {                        actionGroup.createActionForEach$message(list, agentSel);5 E" J5 G2 p( S  v% ]
                        actionGroup.createActionTo$message(this, swarmSel);
; j' a7 p3 L, f  E9 `                        schedule.at$createAction(0, actionGroup);2 A" w6 S6 m0 n: V. F5 R) d, Q
                        schedule.at$createAction(1, actionGroup);
3 ^( q9 Q! c6 F. u5 Q) c) v                        schedule.at$createAction(2, actionGroup);
. i* d( l& r4 j% n
& ~9 T( @4 }- s                } catch (Exception e) {
+ ~, C% w( v$ k                        e.printStackTrace(System.err);
: F8 A- w2 N# U& A4 t/ I' i                        //System.out.println(e);
" f* ~% p9 D" [                        System.exit(1);4 ]  Z$ S$ ?$ M! ^! V
                }
( r7 k6 j0 Z9 x; z  ~7 R- q  c6 B0 V4 O1 ~! M/ }. o! w
& p3 A! P7 @6 f$ G8 B7 `
        }1 X  ]) [! d8 ^( _

: G2 \- _2 m! l' K" g5 P        private void swarmSetp() {+ ^4 v5 M1 ]* k/ Z$ q4 U( T
                list.addLast(new Agent(Id));8 W) |/ v# Y/ _: x
                Id++;
1 ?; h  q( ~9 {" U/ ]* x; ]        }' J  t6 [, N; T4 ^2 x5 P

& b9 ^  W+ h! J7 A' Z& h8 b' G        public Activity activateIn(Swarm context) {1 Z7 k& V5 j. b
                super.activateIn(context);
6 s2 ]5 Q2 e4 @$ b                schedule.activateIn(this);
/ i. n+ H& u# ?                return getActivity();  w/ y( c2 y5 q2 Z! T" Y- ]' v1 T, O) y
        }
+ M8 A, u: U1 S6 h, ?$ o* H- g. B+ V8 {# u7 Y
        public static void main(String[] args) {* J/ O; Z( [2 x$ w- U- Y: a
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 j) w$ A  E: s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 T$ a6 J# k$ C9 z                swarms.buildObjects();. }# z& K9 t! \- Q  @- b
                swarms.buildActions();
' K) d$ _' S; V5 A1 I9 j- Q: e                swarms.activateIn(null).run();( d! a3 r7 b" a4 G/ O* W
        }( z; n: s# i9 Z- D, W
: k% @! n6 E3 p  O3 V/ c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-3 08:35 , Processed in 0.016399 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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