设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5884|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ l+ G4 N4 D& M8 p& c) ~7 E  z; A$ V% f; F7 T, o/ `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ ]2 b1 O$ a" X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. a. G  m1 e! b
swarm.SignatureNotFoundException
7 l+ ^+ F' x  m- b% V5 E) J        at swarm.Selector.<init>(Selector.java:76)
( C$ V: ?" c8 R6 A        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) e9 f4 \3 _1 G* t7 Q. s        at ActionGroupDemo.main(ActionGroupDemo.java:67): K# q# l8 }+ b; `
! }0 U# x5 `) q/ {6 B3 _5 D- E
4 q. N3 S# x" `2 ^" G9 H
import swarm.objectbase.SwarmImpl;: x5 U8 r3 D1 n1 @; _: W
import swarm.objectbase.Swarm;
6 h9 t9 C! Y! kimport swarm.activity.ScheduleImpl;
4 Q+ m9 ~' I1 g4 Wimport swarm.activity.Activity;# z  s( j0 J+ b
import swarm.activity.ActionGroupImpl;
8 Q2 I5 ]3 `: a8 f+ ximport swarm.collections.ListImpl;, X) e8 G+ E2 p+ Y5 [/ f2 p
import swarm.defobj.Zone; 3 B% x, o0 g8 \. s3 o5 s1 D
import swarm.Globals;+ k; T4 l+ P# Q  M" k3 U
import swarm.Selector;" D$ A; r/ I: z! i+ }
import swarm.activity.ActionGroup;
& d7 L2 V$ Q  oclass Agent {8 [" h1 P' X9 M3 J
        char id;
2 P- ]) r* j+ q1 _( ]& j* {, i- [' p* p) R
        Agent(char id) {
& r0 X) d8 I  P9 r* }: b. [                this.id = id;0 B% n0 ]& a1 o, U0 F( }
        }
# |" k( `, \# e# T% \" E; P0 n6 x3 A/ O* s* c' D
        public void agentStep() {1 z: Q" P! p+ }/ j  R+ x# l3 x% }
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" y. C2 l9 h' Z' A& @9 K# Q. }3 V; y        }! z3 W7 i6 p, y5 B5 s" g
}% V9 I1 T4 d! [/ s# d

7 g6 r' j2 f: o5 I2 jpublic class ActionGroupDemo extends SwarmImpl {. P8 P; o- A9 w" z* A+ E
        ScheduleImpl schedule;5 o7 v+ _6 E' }
        ActionGroupImpl actionGroup;
. c8 m7 D' @! a" n$ ?  C        ListImpl list;4 Q, j: H/ D( W
        char Id = 'a';
+ J+ V9 C4 I8 m5 }# W2 [3 \- d7 ]: ~' h1 w, i; r6 w
        ActionGroupDemo(Zone aZone) {9 b/ }5 F. `0 C2 J1 J
                super(aZone);
( g& p( W# E0 @/ e- Q                list = new ListImpl(aZone);. O+ d" T$ |! I0 Y" v
                swarmSetp();
6 }+ w1 K4 D, q  M                actionGroup = new ActionGroupImpl(aZone);5 c& L6 q+ g' X+ I- z
                schedule = new ScheduleImpl(aZone);; W8 {5 ]2 L# d9 o% \
                try {
7 L& p. `# _6 S0 `4 b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- \- A8 y/ F7 ^; E6 p
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 N  S4 F5 F4 @, P& I) N) h
                        6 F; o0 p4 H/ f
                        actionGroup.createActionForEach$message(list, agentSel);! l- q$ Y: {2 w# j& r5 F) @
                        actionGroup.createActionTo$message(this, swarmSel);" i5 k! J; b* @8 Y+ U8 D
                        schedule.at$createAction(0, actionGroup);. e. Z- v8 L  l# U* u7 a4 j
                        schedule.at$createAction(1, actionGroup);" L0 X  c6 X- s2 h5 F/ h
                        schedule.at$createAction(2, actionGroup);5 H2 E' V0 ~! l8 N2 A1 `& r

& q5 U0 u; {1 b) _9 V; u* _                } catch (Exception e) {
2 Q8 C, A) ]9 E9 x0 U                        e.printStackTrace(System.err);0 G0 e) w! x& I' ]" c2 T
                        //System.out.println(e);
  ^1 z4 M  S" |5 Y( J0 g                        System.exit(1);
& t& p0 ^3 ~0 M- x$ K                }
) B8 B+ z6 E% ^; g
) U- n$ V) T- Q0 D3 m) B: p% @$ k8 U- s+ u& W2 L
        }
% m/ |0 L) V* L# S1 Y4 i! u5 A) y5 s8 c% H; {
        private void swarmSetp() {
+ O" Q, R0 U$ k- b                list.addLast(new Agent(Id));
( C; Z. j0 H2 x$ m                Id++;
/ B' s, o8 M0 W6 D4 g        }
4 L1 m# `  p/ U5 s2 {7 D& Q; b* I- _
( a4 w% T1 @3 T( }; d: p5 C) t+ p9 i        public Activity activateIn(Swarm context) {( v$ E4 H: C( N
                super.activateIn(context);6 `$ T# V/ e2 `4 J2 K
                schedule.activateIn(this);" |" d$ j+ C5 u
                return getActivity();$ t; r& A5 o, R8 ]
        }2 g3 q6 d6 ~# ~# B0 I: m! v

# d# q/ ]5 A/ V1 i& P' H2 K        public static void main(String[] args) {
6 X5 w- r6 r: t) E- L( J# x( f                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 e. f9 e3 e2 Y2 ]8 Y* D$ K
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, r5 b" \0 _8 [! d7 T6 p
                swarms.buildObjects();& @) ^) A0 d% B# P% Q& R
                swarms.buildActions();
1 C: ]) i, j' t                swarms.activateIn(null).run();
# x. a- _3 v" G* L* g/ X        }8 k" ^. z' b0 x8 Z5 u2 u

$ E! M- J( w' l7 M}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-3 02:27 , Processed in 0.016697 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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