设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10741|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # F  ?! V2 {  [& N' w2 |

3 `9 w1 y4 C3 G3 @; K+ P( ~6 S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 c; u) G1 i3 ^. D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., g; r9 L, q! b9 x
swarm.SignatureNotFoundException! M5 s& p6 `. {9 W  p
        at swarm.Selector.<init>(Selector.java:76), p1 e  l9 o0 m; Q- b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 T( F+ c6 n( K9 I3 N1 d8 u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 B2 N4 v5 U6 \( B! B9 Z1 S' ^  H& Y8 S/ I, H6 f1 ?

8 Y& i& n8 y( \* F6 Gimport swarm.objectbase.SwarmImpl;) E- V0 }- R; a$ F
import swarm.objectbase.Swarm;
! N6 l7 r( L. P& }/ l3 B9 s  Pimport swarm.activity.ScheduleImpl;
. J4 ]2 G+ X% }import swarm.activity.Activity;3 k. X2 E2 T- J( h4 O+ I
import swarm.activity.ActionGroupImpl;  L0 M+ h2 ~: W
import swarm.collections.ListImpl;; m" s1 Y/ C4 Z3 `7 G
import swarm.defobj.Zone;
, M' c# S1 T, b. `6 u3 h3 Mimport swarm.Globals;
4 ]. j  {2 `/ O! Jimport swarm.Selector;
- ^$ q6 q; N9 C, w' qimport swarm.activity.ActionGroup; / l; k$ [" e$ {
class Agent {* Q/ @# ]" }- d5 ^5 ^
        char id;
$ h" [4 x4 j& J2 ~6 a( J5 V& ^3 P( e5 _5 c
        Agent(char id) {* u) J1 L7 k9 R+ B& C
                this.id = id;
( j$ d- ^7 Y( K/ _% H3 h- k        }3 J8 \' {: O1 N% g6 j9 q
2 i2 l) m' H3 p: u2 _0 T. v
        public void agentStep() {
( f4 a: T6 M$ g                System.out.println(id + ":" + Globals.env.getCurrentTime());
' [  y/ d2 h7 I8 ?        }
7 H0 ?" C" N% p& q6 ~}
  T7 {; Y7 }3 V, l7 ]% O7 M3 p- Q( x- u/ R9 g2 W
public class ActionGroupDemo extends SwarmImpl {: o% @- F: i+ B" }' {8 J7 `7 N2 ?6 o+ j3 a
        ScheduleImpl schedule;
+ l& @* i, p+ h$ x& r2 M7 e        ActionGroupImpl actionGroup;
' E; \2 ]" E; C- `        ListImpl list;0 _3 I6 b( o6 O& E% J# o1 h5 L
        char Id = 'a';
; i& s* ^) Y4 T) X  ]/ J7 N% g9 C; Y# @7 ]9 d
        ActionGroupDemo(Zone aZone) {( v9 S+ h& o, }9 B; b
                super(aZone);+ T6 Y: v$ L9 r# _9 g. {
                list = new ListImpl(aZone);
9 h* u  X1 ^% ?# N  U( w/ Q                swarmSetp();; C9 f0 f6 R% V  i  S! C4 x
                actionGroup = new ActionGroupImpl(aZone);: X1 W: W1 B+ U* F" U; s/ N5 t- V
                schedule = new ScheduleImpl(aZone);
! n$ X3 j/ F% }4 y! T5 M1 t5 b                try {
  P# x  g& @% [5 [% s9 W0 R6 z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ |" a" L/ X2 O) Q. g$ w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% y- I3 e) I; G/ S6 ], u: C
                        2 I8 k' L( V7 r1 m
                        actionGroup.createActionForEach$message(list, agentSel);$ O- W% U- A. j  Z, P1 H0 s4 I
                        actionGroup.createActionTo$message(this, swarmSel);/ O( i8 R# y% ~# }& \8 y
                        schedule.at$createAction(0, actionGroup);
8 \! w% J2 I' d$ E. l! x                        schedule.at$createAction(1, actionGroup);
/ K% x1 k% Y3 n+ k                        schedule.at$createAction(2, actionGroup);: ]9 X( v, s6 I4 V6 ]

8 Z" W/ x9 }( X4 C/ I4 ~3 [" h8 ^/ F                } catch (Exception e) {4 x  t1 ^5 H/ u
                        e.printStackTrace(System.err);9 b3 q, I0 M& y" L) C8 k5 U- N
                        //System.out.println(e);
% A9 M! ^! q! z, A" R                        System.exit(1);0 b: Y9 s2 J: u2 T* }
                }
! ^' J2 ~, X3 v% Y
: p( f* b9 J( [  q4 p) L; X9 G5 r5 H0 ~# H
        }+ g* J/ T2 k2 J* i" N

/ o- o: J4 k$ X        private void swarmSetp() {- P2 J/ T3 L/ Z% W; g
                list.addLast(new Agent(Id));
7 }5 ?  e7 G5 h0 V( G$ h9 E9 E$ A                Id++;
, v! `) C2 T7 s3 @+ y# I; k        }, I" K, U9 M" F4 Y
6 Q1 y& Q' N# F/ d( _
        public Activity activateIn(Swarm context) {3 i# T- ^3 P( I' O$ @+ N8 F7 j
                super.activateIn(context);
* c7 s% |8 C. v! v4 {                schedule.activateIn(this);! H! M4 P9 h/ S8 b8 Y& }) l- D
                return getActivity();
4 [5 Q2 T: p, O) o% t        }
. x" f0 B, ~! D; a9 D8 N% b$ _, r" a! c' G$ F
        public static void main(String[] args) {
+ a& _  W' J0 ^  o  |                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. s. _: g! r% z" T1 E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( U8 Q8 _6 u2 t! a; d                swarms.buildObjects();
% `2 @  _# c$ s! N6 l6 [5 L                swarms.buildActions();/ J) [  t1 h8 m& N- O
                swarms.activateIn(null).run();: v5 ^  B" r! m
        }
# O9 c4 Z0 u# D
2 O# z% K8 b) d) O# f' u; }$ T}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-22 09:07 , Processed in 0.013895 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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