设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10913|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ o# ~4 l( U4 q& d/ C
% M1 a5 v' f7 v! @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- h2 [! }7 D7 A/ R" U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- G: d; Q+ y/ tswarm.SignatureNotFoundException' Z4 Q) _1 B0 m  ]2 E# K
        at swarm.Selector.<init>(Selector.java:76)
% F; V# X3 B( s3 e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# e2 \5 P+ C0 s8 Q7 h4 P/ y6 j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 w( I. R$ Z  T, i. \
$ j+ N6 |& G/ v+ q
0 o& ~3 T6 Q  uimport swarm.objectbase.SwarmImpl;
! f3 l/ M9 m5 u7 u6 {9 c" mimport swarm.objectbase.Swarm;
/ B  B; B( w6 L/ N4 bimport swarm.activity.ScheduleImpl;
- |( q4 |5 m9 X7 Zimport swarm.activity.Activity;9 ?2 ~9 \) Q4 ~& M: U  @
import swarm.activity.ActionGroupImpl;4 O6 p4 k" W9 |
import swarm.collections.ListImpl;  ]# Q6 p1 S/ P
import swarm.defobj.Zone;
# B3 U( i. b3 u4 q0 {+ m4 aimport swarm.Globals;7 e6 p) l  l/ h1 _1 Q8 G- \: E  O$ ?( G
import swarm.Selector;9 s$ l9 i( m4 c- ~  O% S3 {5 ]7 d) i
import swarm.activity.ActionGroup;
+ k7 Z* j; S% Q+ Jclass Agent {- e# @' J" Z" V% `
        char id;
0 ?# p4 W! @9 N% y1 `' \& k* ]3 o# q5 g* C: K) D5 G' J) r
        Agent(char id) {
% x6 ~0 r0 {/ e5 t                this.id = id;, Y. L1 e+ O$ \9 A/ w
        }( k$ O+ b& U& ~9 |) ~2 y

: Y/ i- f% I& _3 F$ m5 }- V" N        public void agentStep() {; t, D, R" i+ Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* y' H* U% l* W. ^1 J) ~# @8 \/ c        }- D; O7 U( d( v) y
}, l. [" R7 o, T/ Z1 o

/ c- k+ {/ w3 Z6 U7 F4 {public class ActionGroupDemo extends SwarmImpl {
# A0 x3 ^5 p: a6 c+ B, q        ScheduleImpl schedule;3 }; I3 J  m  T( _( m
        ActionGroupImpl actionGroup;/ b1 o; ~. o/ a
        ListImpl list;
$ R; A: f7 V( W1 T- ?# v        char Id = 'a';( B( _) W( y+ y3 {

( ^" {8 G0 G+ G        ActionGroupDemo(Zone aZone) {2 T+ e! N/ O1 |8 @/ x& \: |
                super(aZone);
3 N6 O: S! ?& U! Y3 C                list = new ListImpl(aZone);
1 R5 o* v1 B' ^* }: P                swarmSetp();0 H8 A5 Y+ {: T8 G6 m
                actionGroup = new ActionGroupImpl(aZone);2 g. u  I  F) {9 Y
                schedule = new ScheduleImpl(aZone);( m" d; I$ j, K( z, }/ T9 }
                try {
) P5 X: O% B  \( B* S& R2 j+ w! _% l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 g' ^6 O& o8 j9 |$ m% T( A                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% l" j# x! ^9 w$ J, s' l& q
                        ! l7 }5 ^. i. p) ~6 @5 {
                        actionGroup.createActionForEach$message(list, agentSel);
) P4 O/ @; _/ n/ J9 G4 O                        actionGroup.createActionTo$message(this, swarmSel);" q$ O; m- l% x% j8 U
                        schedule.at$createAction(0, actionGroup);. G" R- B+ N" O' ?' ^) A
                        schedule.at$createAction(1, actionGroup);
4 \4 P& u2 o, Y: q                        schedule.at$createAction(2, actionGroup);
" c2 J- \, C$ l$ d+ ?
4 ]# g7 _  |1 A. G  w                } catch (Exception e) {' ?  }$ b* a! ?* j* M0 F1 D3 y( I
                        e.printStackTrace(System.err);
$ p. _* P! ^; k* ^. A8 w5 l( y                        //System.out.println(e);
1 q/ O! Q" U( E" r' _+ f6 D( V                        System.exit(1);
7 V" S: }, I% o                }/ T. `% T$ z8 S' V) a

- z8 f, i7 P/ j
$ `( G& Y  f( k8 A$ h- `1 Q: _        }
1 q0 e9 j3 L& Q8 f
) ~. ]& Y" [2 N        private void swarmSetp() {* a- [( n+ ~; t3 a
                list.addLast(new Agent(Id));
5 i, p, [7 z, L: M. T. t6 n: n7 A                Id++;
- G  C1 s% n. \) k        }$ U* h( `6 o: p, h' d
1 P- S# p9 Y: d
        public Activity activateIn(Swarm context) {
8 B5 I, A0 ~5 o1 E# _; J8 g0 Y                super.activateIn(context);
# K& q* Y" Z7 y- r0 P                schedule.activateIn(this);
) `% K) y5 @# f                return getActivity();/ ~- h. I0 h2 l; ~& k
        }, T. c* V: ]( r5 C0 v( Z, m7 i
' z, M4 l9 Z8 a
        public static void main(String[] args) {0 ?! Y6 l" p4 e5 k9 |$ C% O! Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- _1 ?# z0 A+ h; b  m7 W8 }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 y! P  b# G* o- i# f' l9 X
                swarms.buildObjects();
" R! ~4 u4 V5 ^/ j9 O6 I                swarms.buildActions();
1 |  i9 E$ H2 s  F! ]; q                swarms.activateIn(null).run();+ b2 D9 M; q0 j% m6 p( b
        }
- Y9 X) Z( O+ p% @) D) p0 k
" d# w' _0 \! _! e}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-27 10:08 , Processed in 0.015532 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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