设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7464|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' V4 q: c4 z. l! W6 Z/ H$ N
+ [, B3 _% T. R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# t$ d0 o5 h. I7 {  ~- Y* o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 O" R4 F4 I8 v2 r
swarm.SignatureNotFoundException& |% p/ H! G8 X+ ^$ T5 \
        at swarm.Selector.<init>(Selector.java:76)! O4 ?$ [, u; x
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 v9 ?- A/ G  E: q( m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 d- i( q5 ~* ~" p& p! Y( W9 v
8 w0 u: N- t, b$ K. I
/ F# a; g& I+ {/ |4 Dimport swarm.objectbase.SwarmImpl;9 x- D) ]" c3 j( v5 P
import swarm.objectbase.Swarm;
+ b1 I; L1 ~$ `, R( H! I/ [! Simport swarm.activity.ScheduleImpl;  J9 }6 K1 G; k' |$ Z
import swarm.activity.Activity;
! g0 f7 e; ~% c+ Iimport swarm.activity.ActionGroupImpl;% I. d2 d' C; }
import swarm.collections.ListImpl;
) V% i8 a+ Y( a9 v. z  b, j0 uimport swarm.defobj.Zone;
$ l! I) U& u  g0 [4 e  R) D" |import swarm.Globals;
. L  @$ r+ W# zimport swarm.Selector;4 }* p8 S. O" P4 Q. y/ O) |
import swarm.activity.ActionGroup; " N7 x" |0 m, g) x: @( h4 l
class Agent {  N8 h" {, f0 X' `
        char id;5 V$ i& Q& t2 O) @9 {" B
; L5 B: E& P: w2 z( A
        Agent(char id) {+ Q9 I- I' F; e- c8 Y  l. o9 ~
                this.id = id;/ z7 ~+ K  m8 t2 H7 U! a
        }
: l* b9 O: t( w  O
  j7 p4 H$ w6 t        public void agentStep() {( ~8 m6 A: K0 _, t
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. z- O2 n7 v" Z/ f) G: O        }# k  r7 K% D+ `
}
$ G' t0 t6 X6 H4 O( K  S: O
6 l8 R! C' q3 X- Epublic class ActionGroupDemo extends SwarmImpl {9 A& ]- f4 n8 k3 G
        ScheduleImpl schedule;+ P# R, j' B7 M+ v
        ActionGroupImpl actionGroup;
/ Q( f, Q4 \6 l4 m& \& O' x        ListImpl list;
0 k) e' J6 n8 w% i# C        char Id = 'a';1 E8 @4 @; W4 f. G/ @& [4 F, r# B

- T5 i# M0 W" f# s7 O$ D) A        ActionGroupDemo(Zone aZone) {
( E5 e) a3 L+ z                super(aZone);8 ]1 S* y) v3 \: Y+ H! p9 a) _* @
                list = new ListImpl(aZone);* H0 `$ _2 Q% j8 r9 k% c. }
                swarmSetp();, J# Z) e3 X& U( u3 j* i% T
                actionGroup = new ActionGroupImpl(aZone);
; d7 i; z! ?- U! l                schedule = new ScheduleImpl(aZone);
4 I- |& d  ?+ w# z' g: ]                try {
2 ]! i% E8 c0 e; \) a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 ^" c5 c+ k/ I" ?1 I                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; `7 q0 a$ s! i+ ]6 l$ X4 C* p
                        , E4 ]: C! k! k0 K/ N+ ?
                        actionGroup.createActionForEach$message(list, agentSel);! W2 S, Y, i: h6 R. w# ~
                        actionGroup.createActionTo$message(this, swarmSel);
$ _9 [; x, z' j, l                        schedule.at$createAction(0, actionGroup);; r0 A  d+ j1 L, O: s2 M3 @
                        schedule.at$createAction(1, actionGroup);
5 X( P- C/ [& K                        schedule.at$createAction(2, actionGroup);! I8 T( K# A& V$ E

# q) }/ N3 z$ t, H* P& D                } catch (Exception e) {* p7 v9 @! V" Y
                        e.printStackTrace(System.err);: c$ y' G- l; r" h8 \6 n  I
                        //System.out.println(e);
2 X4 s% j2 |# c3 Y- ]6 H                        System.exit(1);2 c. V: }; |0 c8 m. W% [- b
                }
3 Q% V. A5 Z0 f1 J( ^8 H9 k0 n) a/ z) Y9 t4 @: M* x! P
& u, `1 X  g6 u: `. a' d
        }% a& W% X" y9 b! }' [
: Z3 p! ?2 x9 x; ]8 X( g
        private void swarmSetp() {
* h6 q6 \( h* L                list.addLast(new Agent(Id));: A  q: j% c$ L
                Id++;+ F4 H) G. A* M
        }: G) c  W9 z# N0 B! e

  Q  z# n9 n" ~% A- B        public Activity activateIn(Swarm context) {5 I$ ?, Y  H$ J7 s: O
                super.activateIn(context);& e" @. l. ^+ M
                schedule.activateIn(this);# X6 L" K, |" ]8 ?/ F
                return getActivity();
& [! I- ]* j6 I9 M* w+ Z1 N        }/ f5 f0 x/ x1 ^

$ i7 j4 D) o/ ~% [        public static void main(String[] args) {
, |0 ?% e+ e5 G% H2 U, ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 x; j2 s- L) V, R
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; E; f) Z4 t( u* k+ h                swarms.buildObjects();3 Z- P6 z" l. I9 ^+ [0 {
                swarms.buildActions();4 i. Q( M; }2 Z/ r
                swarms.activateIn(null).run();' j3 w. Y& c" D  h
        }
9 \) A& x1 |& ]5 y8 N
. D# J" z9 K8 H8 P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 16:09 , Processed in 0.016730 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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