设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9038|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * K- E) T- D" g7 E$ I1 u

/ h1 z& |3 J3 g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, X8 S, u, F4 C% k# E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. M! R$ R8 ]0 N8 Dswarm.SignatureNotFoundException
8 T. Z& Q+ G& b2 e/ N        at swarm.Selector.<init>(Selector.java:76)+ o2 Q& b! U$ I: y/ a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 r1 I* C1 h1 S' R& g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ Q2 i0 ~* W8 u9 @0 \7 E& O& _+ b) N8 E& d

$ ?4 a: l2 d2 L3 G5 i1 Nimport swarm.objectbase.SwarmImpl;
5 m  e" h' H# r: t# T* _import swarm.objectbase.Swarm;: i; \/ R/ I! `) i( n9 S; w
import swarm.activity.ScheduleImpl;
  t* \# c2 D" @import swarm.activity.Activity;) }5 r8 m5 Y% d5 u) ^
import swarm.activity.ActionGroupImpl;
. K/ ], w3 P% D- ^- simport swarm.collections.ListImpl;5 Q: q" ^  B. v) }/ Z  c% l
import swarm.defobj.Zone;
: ]% w1 G+ J+ ~" `import swarm.Globals;
4 x$ R& u  J2 gimport swarm.Selector;; N: `: T2 _8 w, o
import swarm.activity.ActionGroup;
3 m3 B! d( J- L! y* R, d0 yclass Agent {# \4 B# t% t3 Q& C# {
        char id;! ^( D+ \" |7 I5 g0 a& g

" j, C- O$ b2 t        Agent(char id) {$ d+ n  }" G) r: G& Z7 }  a
                this.id = id;
. m- s: e' {% y0 z( Q% G        }: j. D' t! {( R8 k4 o3 I

$ V/ d1 k4 l2 s8 o        public void agentStep() {% j8 d. Q4 ^0 t% K, z3 M' p& R/ q: G
                System.out.println(id + ":" + Globals.env.getCurrentTime());" w  b, M0 z: |6 @1 r$ L
        }; u. n  T! J4 r/ A
}: n" B, Z0 X; o+ b+ g

- C. I2 `3 _; S  x: U  R' bpublic class ActionGroupDemo extends SwarmImpl {
: @* |) [$ s. Z        ScheduleImpl schedule;% a% k/ r- t2 @0 k: f* ]6 A  x
        ActionGroupImpl actionGroup;
/ f* D0 }; m2 h  S: \        ListImpl list;2 Y1 ]3 |0 Q1 W4 X3 ^9 a4 k9 S
        char Id = 'a';0 V6 ^- @' q) e% U- W  s

3 M7 ~0 F2 ^3 Q- k% ^. e( H        ActionGroupDemo(Zone aZone) {: q7 \, @) j7 d" {: f& J7 s
                super(aZone);
$ h+ E% v7 g; c! G* x                list = new ListImpl(aZone);6 h8 o& I8 q6 ^" B8 ~
                swarmSetp();/ z2 P% b7 v6 P9 }* L) r
                actionGroup = new ActionGroupImpl(aZone);
# j$ P8 i6 D2 z/ `. Q                schedule = new ScheduleImpl(aZone);7 }9 M% o4 {# l
                try {: ^6 E2 g- p/ {3 _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ C& ^8 x. E6 E3 x, m2 ?
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 D8 v& b, }+ H4 ~% E                        ( e0 s: z+ [4 C3 h
                        actionGroup.createActionForEach$message(list, agentSel);
) \+ t2 z  B+ z* h5 V1 ]0 @                        actionGroup.createActionTo$message(this, swarmSel);
) r1 r7 n6 Q& v3 W0 |. @! d                        schedule.at$createAction(0, actionGroup);
' D6 v- j$ E: P) q1 C- x                        schedule.at$createAction(1, actionGroup);6 H8 ?9 m0 @1 `. l4 N
                        schedule.at$createAction(2, actionGroup);
+ P3 T1 x9 m6 ^/ ~) b6 t( G/ ?6 ?( h. y2 G& Q1 a
                } catch (Exception e) {4 \8 B( Q2 J1 V$ C% i; \- Z! D
                        e.printStackTrace(System.err);: O# G7 T- f$ j4 }
                        //System.out.println(e);
3 ?' c9 q0 \- l- w% v                        System.exit(1);
* T" u- s3 j: r1 A4 R) i                }, a" ^9 D0 w5 z9 A: b
! N# V5 K  k' K' |( Z& w  |

; }7 y- `9 }+ ~4 A! B7 w( H        }: M, \9 K) v. {6 [; B8 u
- X" ^+ i- Q7 N+ g
        private void swarmSetp() {. M8 f8 c$ p7 _2 [/ i6 e2 i
                list.addLast(new Agent(Id));9 B8 W& a4 e! o+ `3 B6 Z
                Id++;
; d* U+ _* h  `- F$ }: R& A! a        }6 ^: y* @0 f- ^. p, b2 ?5 e! O
! b3 N. A5 R0 {8 Y$ v0 b
        public Activity activateIn(Swarm context) {$ ?  ?: Y' O9 H
                super.activateIn(context);
. L: [! b4 F0 }" G$ e. c0 ]                schedule.activateIn(this);) A* |8 I! R! ]$ F! p$ `0 ^6 c
                return getActivity();
, ^2 u1 t& u7 }' e' e        }" c0 F0 b) N4 @8 C. _: _
- n( W' w7 L' e! L
        public static void main(String[] args) {
4 ~1 f' e8 j. w  p6 a6 A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( C7 Z, H# E$ |0 L( f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 B" e* M) g6 `! L$ }: Z                swarms.buildObjects();2 x; Y3 U& M# ~  P
                swarms.buildActions();% q6 B8 J' [* k& L5 x# `! G; d+ a
                swarms.activateIn(null).run();0 G; L* E. o( _4 R! h
        }8 \& r3 y9 h  u& ]2 f

; B( i0 f+ ~  m% Q4 q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-29 18:41 , Processed in 0.015525 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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