设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6898|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: `1 j0 D" r0 w/ V7 {0 M
, I* Q( P% t% G# ^2 u! n6 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# X+ |( N6 ]+ M( X& j0 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 s1 e1 C% q1 S% s
swarm.SignatureNotFoundException' ]8 ^" W% u8 x  M- R% J
        at swarm.Selector.<init>(Selector.java:76)  \! D4 Z! P7 N1 W2 m. d& V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 ^. U" T( y* ], \        at ActionGroupDemo.main(ActionGroupDemo.java:67)) q! i; p. k7 t
: K$ M; s# p  q2 r5 N/ ]
/ e* ]7 B; z8 \, e7 n4 y- {
import swarm.objectbase.SwarmImpl;
6 U) N' t, m/ W' D3 Cimport swarm.objectbase.Swarm;$ O7 |# c5 u3 Z6 _5 w; a
import swarm.activity.ScheduleImpl;
$ ^' s8 V( z9 O- d7 s1 Bimport swarm.activity.Activity;
( u; j4 W* J4 h% a5 |7 wimport swarm.activity.ActionGroupImpl;- Q  C; N% I  ^2 o' _. ]; Q
import swarm.collections.ListImpl;  \; K6 E  O* D2 \1 i* I
import swarm.defobj.Zone;
& L6 K* p. Z9 G6 }( `- ximport swarm.Globals;  K' g7 L& _* o' H( k1 A
import swarm.Selector;
% n' P& _8 h# `. }/ L0 W7 zimport swarm.activity.ActionGroup;
2 U, G! g/ p! X3 nclass Agent {. T, |5 W$ F7 ~) T  r- ?/ v1 q
        char id;* t, K4 S' {4 a& }2 R* l1 B

, F# R2 f) J* G' C8 H5 E        Agent(char id) {
8 ~% s; o6 b# \! L$ S' H) R: c                this.id = id;
2 X4 T3 @+ E8 T+ F        }
5 ~7 D% Z6 S$ g) c  P) |
* j( ^3 G* p0 l/ W% [3 [, ^        public void agentStep() {
: k1 T, u$ n* S' ]2 [                System.out.println(id + ":" + Globals.env.getCurrentTime());4 N5 }; W% P: A2 D* k1 f
        }3 H9 A" `% }( r: j) `
}- T) i8 X. ~7 G6 C  L9 ~2 W1 L

: y' Z+ v3 D4 g( T2 n/ H. tpublic class ActionGroupDemo extends SwarmImpl {9 L3 v8 l! O: P1 X* s2 U+ [  \
        ScheduleImpl schedule;
* q9 D& ~. a" J7 }5 f7 l" t        ActionGroupImpl actionGroup;$ [( ^; X2 v8 E% L% q
        ListImpl list;+ u5 o3 u! h0 y. A$ L2 S6 A- r* |
        char Id = 'a';
! z! J& [0 I9 T0 U# K, ^  t) n1 t& W: ^4 h8 _; C1 ]1 g
        ActionGroupDemo(Zone aZone) {
! I3 m" u# r# G/ q                super(aZone);/ [8 b( \# ~5 M) \2 E7 Q
                list = new ListImpl(aZone);$ P$ R- p: Z( H" `* e
                swarmSetp();1 w) J* ?+ z. Y0 g" O
                actionGroup = new ActionGroupImpl(aZone);
0 l5 K1 f+ e& Z( n$ x' H) R                schedule = new ScheduleImpl(aZone);
7 z6 J- v. ~% p! I* O4 L! p9 t# ], k                try {3 c$ L! f- p0 U2 J6 a
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: A0 {- N8 ?9 o; g! Z7 @- M
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ w5 m. T+ t- g: o
                        . f% X& D% Y1 {! w5 k" I, J
                        actionGroup.createActionForEach$message(list, agentSel);
" Y' T! o# H* [* F* X                        actionGroup.createActionTo$message(this, swarmSel);
) E8 P' Z1 v/ O                        schedule.at$createAction(0, actionGroup);" s8 I& X$ N6 B
                        schedule.at$createAction(1, actionGroup);5 {' L; D( ?* T9 L* @5 V
                        schedule.at$createAction(2, actionGroup);
( V2 `3 R' r, v" \3 E' h
' |% o, ?8 v- G! p: ^                } catch (Exception e) {; |" v- S$ J' O/ K+ d$ K
                        e.printStackTrace(System.err);
6 W# g; S8 B$ A, `                        //System.out.println(e);
. ?2 r& E( U% q                        System.exit(1);
' r  @8 M8 F( D+ [  W, F# [& z                }
& V  Y& F" P. a: M' w% U' e. Y- s9 j+ w7 J# ^* N8 L6 r  x+ L6 P

4 e5 `4 d" H# T* _2 A3 ]# M% h& p. z        }
8 q9 }% s6 d3 D# D8 `
/ }: g  X# I2 u, N! n5 b5 X        private void swarmSetp() {
( z  J3 j- {+ S( F: ]$ ?/ ~1 Q                list.addLast(new Agent(Id));
& j& I0 o3 W6 R                Id++;% L! Z* d# z: N+ t
        }$ R. E% e& q& a7 I2 n
& C- N5 ]" Y( j* D1 T
        public Activity activateIn(Swarm context) {
& y7 S# b8 u# }% d! f0 }$ B                super.activateIn(context);! f! h  Y( e. m  a
                schedule.activateIn(this);3 Q, l1 {1 y) Q0 r, g* V
                return getActivity();0 p3 h# ?6 F: u* n  J
        }
& U7 ^# A& t& H5 r0 Q3 E+ z7 X5 U2 H$ O
        public static void main(String[] args) {
% K! `0 Q) s. e7 L) ]& A: Q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 }( O, e! U$ A& q4 v7 x
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: Z) j4 ?1 x5 [  G# J
                swarms.buildObjects();
* h. _0 J/ u  U% y; h- v                swarms.buildActions();
: m. N9 t2 O# q3 J* a- }6 u                swarms.activateIn(null).run();6 A! {6 d/ S# V  |& n
        }& b. v6 I! O; R1 c5 d( a

* l' s. |( w; Z. H}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-12 17:41 , Processed in 0.015507 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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