设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10140|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 P! f  a* i; l% W) a0 M5 j; T& i1 K: q/ ^4 s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( z. s6 }/ I& V5 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* L8 u' j1 P! s$ Hswarm.SignatureNotFoundException
( E6 z* Y3 z) I" K# s        at swarm.Selector.<init>(Selector.java:76)6 b% d& `5 d/ o, K% E; S
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 m: \; _1 ~: k" j
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- E$ i. N4 z3 `8 \
2 i8 P9 n6 G4 s  `. ?, X
8 a$ t9 Y$ E: Himport swarm.objectbase.SwarmImpl;
% d! {( Y9 S9 j+ A2 Limport swarm.objectbase.Swarm;
* j" E2 L2 r4 W  P+ z- p4 B) s) m  uimport swarm.activity.ScheduleImpl;/ b( k6 g5 U0 j4 V/ j
import swarm.activity.Activity;/ w2 ^% B: j* {& p
import swarm.activity.ActionGroupImpl;
& c$ E" s' E2 L3 R- `9 eimport swarm.collections.ListImpl;$ [  |3 y- {2 u. j. \
import swarm.defobj.Zone; ; ?0 t& }! v& c* R. X  i
import swarm.Globals;  D1 W& \, W6 Y: F; N
import swarm.Selector;2 M  Y6 T2 w; \1 H/ }
import swarm.activity.ActionGroup;
* f8 D, d! |) K- W1 X  A5 |class Agent {7 l0 u9 _( `1 p3 }4 U9 |9 w  H: Z+ R/ m
        char id;, }) R) _2 `! R) f" U

* H9 C" Q4 q4 n; m3 F8 j        Agent(char id) {
' G3 m; s: n- `2 ^% E                this.id = id;" o6 d, v3 `0 W% a
        }
7 i2 w0 h) }/ v% m, O7 V; a
1 m3 O! q5 T4 f        public void agentStep() {7 ?1 |: E! O+ q; @
                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 \( ?1 r7 ^" q  x" J% h9 \        }
; b* J( q3 T0 X/ J2 c}, U# D5 G" u$ h8 S" J( ]/ h$ @

) r9 E) l3 S3 M2 }9 Y% ~, Y2 Y& Zpublic class ActionGroupDemo extends SwarmImpl {' }3 l5 F" y( C% D% _$ H! C$ v& ]
        ScheduleImpl schedule;
! z1 v5 S8 Z6 q' U; j        ActionGroupImpl actionGroup;' B, S) I& U8 K7 `4 a% w6 }8 d& K2 |
        ListImpl list;
, x/ H& l: D% e' x; X        char Id = 'a';
. {& E/ ~4 N/ T  I
0 G3 q2 j, a2 s        ActionGroupDemo(Zone aZone) {
1 O3 G0 q7 X0 S3 e" a  G                super(aZone);( F4 y4 X* {8 o
                list = new ListImpl(aZone);
: L3 o1 D& ^* y! _; U5 n6 }# X2 m" R7 ]                swarmSetp();7 c$ o9 y, H  [+ d9 M
                actionGroup = new ActionGroupImpl(aZone);7 @" b0 s9 f" K2 q1 a
                schedule = new ScheduleImpl(aZone);
* H7 C( ?7 w3 q                try {
# x7 u, G8 a. u7 i9 ~$ g5 y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" T1 u8 Z' p7 s6 ^# l& q. {
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 g$ b; L% ~% @0 t/ Q* j, b% a* Q                        + q, o" V% f3 ^; F' L: a" p
                        actionGroup.createActionForEach$message(list, agentSel);
( V0 f& l/ A- @( C7 s" o                        actionGroup.createActionTo$message(this, swarmSel);( q3 k/ q$ Q5 j  r1 P6 u& G6 [
                        schedule.at$createAction(0, actionGroup);9 b- s: @; z: z" i9 H
                        schedule.at$createAction(1, actionGroup);8 d% i1 N3 d0 |! w' a$ C
                        schedule.at$createAction(2, actionGroup);( O( U; i# G; T  Q3 S, k
* e+ ?- s. [7 ^, w, d
                } catch (Exception e) {
) A1 T3 x! ^4 S" D8 S3 D9 Z3 _9 ]; o                        e.printStackTrace(System.err);
- o3 B5 k* g/ d- {* K                        //System.out.println(e);
# A2 ^: f3 B) g) \                        System.exit(1);' f" I$ J0 |( m) L. E$ t
                }
* n& f  x1 Y- b& B- b
) U' t" F0 Y5 v" c! J7 O. n3 f; _9 q1 g
        }
0 W% X% j# b& i2 B
7 L7 @/ a* A$ r4 f3 k        private void swarmSetp() {9 h2 {# ^- S' |! ~+ H
                list.addLast(new Agent(Id));
" _8 H* c( q! ^& g; Q                Id++;/ C3 ]* @" a% k7 c
        }+ R+ m' }( H) V

/ Y( J' i7 @7 y& o- c9 c2 {        public Activity activateIn(Swarm context) {* Y3 o, W0 T8 T8 V
                super.activateIn(context);
- B% }9 a2 O# z                schedule.activateIn(this);
1 P% L" G: H' B9 `: x# e                return getActivity();
0 z# }, S6 g% y. e( t- K7 C        }
$ e3 V  m, m* R- e0 T0 |& K) X9 D0 }
        public static void main(String[] args) {
7 m6 J+ W0 C8 k$ U1 k, e                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 v: J9 p% j* q7 u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 }. v' o+ I- }8 [( r2 C! z
                swarms.buildObjects();, G  O3 w& d7 h" M7 ?+ {4 l' {! |
                swarms.buildActions();8 q- w# @. p" f
                swarms.activateIn(null).run();
& L) Z: S4 X$ d* B! [        }
9 i! S3 x: w( z; Z+ o' e$ h5 d& C6 C
% e! Y! y0 S- J! q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-5 01:06 , Processed in 0.013182 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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