设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6088|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 [" W; O3 x4 c7 g) F. U
6 ?6 {* b( T4 }" e' b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 |% m/ Z0 c- B. P2 o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& {- ^" u+ G3 x! l' ~
swarm.SignatureNotFoundException! y- W3 r- T# B# R" m3 G% f% e
        at swarm.Selector.<init>(Selector.java:76)
& j6 X, ^' R$ h" p# {$ z! X        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' H0 n5 \: C9 F- V7 c% S+ }1 p" l        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# V) E, i% x- O1 q& v2 N# c
& r: n6 e8 `3 [7 f
; W7 b7 h3 S. a* r* Nimport swarm.objectbase.SwarmImpl;
, D0 A( Q7 X% p1 limport swarm.objectbase.Swarm;
) o, x: u. X7 u; oimport swarm.activity.ScheduleImpl;0 ^' c$ Z' p% N9 k) v& b' r/ x' s* w
import swarm.activity.Activity;. o0 t5 ]/ I1 Q2 ]1 z
import swarm.activity.ActionGroupImpl;
* r. R# [4 _" d+ O! y. ^7 w0 a: iimport swarm.collections.ListImpl;8 A, b2 p; V! i3 h
import swarm.defobj.Zone;
$ _( s5 h% o* [# s7 h: nimport swarm.Globals;2 H6 C2 H7 \2 h1 l2 o5 K% R
import swarm.Selector;
4 E+ a7 I; `" ]5 Uimport swarm.activity.ActionGroup; . I) s) G5 j) Q
class Agent {
, Z. y7 z- E3 `        char id;' E7 |) f0 i/ S
% Y; |# W! @) e7 C6 Q' ^
        Agent(char id) {$ a, V, U. }( Q1 j/ Q" z) }
                this.id = id;/ P& F( \$ _, ]# t8 O
        }3 `' Y, |2 [% D

5 c1 x/ T  [; H/ W; E) B        public void agentStep() {
9 |1 H5 C8 w( k4 N$ R; Q                System.out.println(id + ":" + Globals.env.getCurrentTime());
, M) D# D1 l% D8 @' B        }
0 K  J1 y* t  e5 N5 U}* G/ _% g. X' M6 X" q7 H/ |

/ [" r) m# S+ `: E* f/ @public class ActionGroupDemo extends SwarmImpl {* b- a% c- I9 B5 y
        ScheduleImpl schedule;) p! Y! G, v- Q1 g8 a, E3 N5 y: a
        ActionGroupImpl actionGroup;/ ]2 X% R/ b+ O. Q" {
        ListImpl list;
! ^7 ^9 m0 l: V; s- O        char Id = 'a';
4 M2 V: y" `( U4 v2 f! u9 T
( M2 B6 X  X, ?% \        ActionGroupDemo(Zone aZone) {
( q% x8 N: f' {0 n9 @# @                super(aZone);
* Y7 x* G3 y& ^: B                list = new ListImpl(aZone);
4 r' T3 d' \5 h  m3 f3 X                swarmSetp();8 D( c9 R; o/ V& V! R: b
                actionGroup = new ActionGroupImpl(aZone);
: g9 o2 T8 ]# L: {; b8 X8 l                schedule = new ScheduleImpl(aZone);
- i0 _& G/ g* h. E: `                try {. ~- x2 q, r9 c8 k/ T# A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' B7 l0 I' R4 \) H/ a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 z: G  ^( X6 I  G7 N                        
9 C: ~1 V; U# T+ `, b' c8 g                        actionGroup.createActionForEach$message(list, agentSel);# z) c" l+ w9 R/ z1 E. r: `# f- X
                        actionGroup.createActionTo$message(this, swarmSel);  S8 U0 X/ J3 A- t7 P' c" p
                        schedule.at$createAction(0, actionGroup);7 K; A. m1 t4 U
                        schedule.at$createAction(1, actionGroup);5 S; }) a# @# {! k
                        schedule.at$createAction(2, actionGroup);
9 S. S' t& `" q: W+ e* s% A
5 M( d# N. ]; O                } catch (Exception e) {
; Q% f* [, g4 g# t9 z                        e.printStackTrace(System.err);
# K6 `% Y3 ?8 n, T                        //System.out.println(e);5 J% Y% z+ U8 o+ Z5 b; i! ?1 Q
                        System.exit(1);
8 f; o5 G) k7 X; Q/ e5 w3 ~                }
- o% Q  T' |/ P' u
* m$ E. Y% g. U( }6 A0 Z
7 `  X& a, }3 I3 R- T; z        }$ _& d- r4 i/ m" S1 O1 s
2 W$ B1 [, x! Q1 \# X' U
        private void swarmSetp() {# }3 D2 g8 n  F0 ?, O& P$ D/ E
                list.addLast(new Agent(Id));! J" ]3 @: p; K- d' g
                Id++;
- Z+ u; o! a6 l        }, ^* V. z. U0 R

$ ^' ^; D" u1 D: l+ E1 _        public Activity activateIn(Swarm context) {& {, I/ H0 L; y& G6 g
                super.activateIn(context);6 L* s) t- m5 Y7 R; k2 I7 ^: I
                schedule.activateIn(this);
; O% C/ k  c: o0 C% z  d                return getActivity();& P/ S' g; L& R& ^7 E! d5 r7 K
        }7 _& `, L, r1 L0 P6 l
! Y: `7 u' u- k8 E
        public static void main(String[] args) {- C" s, [; d/ W0 h! \3 ]3 z9 i! S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" I( O9 p: |/ d' _( a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! h& d8 f$ `% M( ]3 _
                swarms.buildObjects();9 O) _  o! T; q& Q6 C, S6 W
                swarms.buildActions();
+ T2 E. Z) M2 t0 o/ ]/ f                swarms.activateIn(null).run();$ U* d! x! ~* P! H
        }1 ?  [, {6 `3 [2 h; |6 z: ~
& c0 }4 P4 c6 _5 T0 Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-16 23:13 , Processed in 0.016729 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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