设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12683|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 M# X7 ]* d% }! Y# z/ H( {+ {( g! m2 @7 I: s! s  l  n/ r7 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 g9 A! C) |" ]+ P( H. g/ `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ ~: j( P! i2 z0 E# e3 h& E1 V
swarm.SignatureNotFoundException
9 s, @/ m& x/ H% S        at swarm.Selector.<init>(Selector.java:76)
; U* {. a1 W7 I1 u, J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) ~( X1 \; Q: C5 |4 L6 o        at ActionGroupDemo.main(ActionGroupDemo.java:67); k! d: ?1 @3 p3 f

" d" E8 Q6 p% I: V; S6 y# o$ w/ i' j% w# @5 O- }/ n, U
import swarm.objectbase.SwarmImpl;
$ ^$ e1 l" s% \7 y8 yimport swarm.objectbase.Swarm;
1 V. b# C# q1 Simport swarm.activity.ScheduleImpl;9 m' s9 B* C( F, R; `
import swarm.activity.Activity;
" w; t9 A6 @1 ], s2 Bimport swarm.activity.ActionGroupImpl;& b5 |% r) `) S7 `
import swarm.collections.ListImpl;* y) m/ l6 C4 H; K5 ~  B) ~
import swarm.defobj.Zone;
% B) b8 A9 E* e' X# o3 g; i" Ximport swarm.Globals;1 `) R3 q2 x4 W$ k# z1 ^
import swarm.Selector;6 F" B- i% g/ H7 ]7 ?* Z2 N4 Y5 P
import swarm.activity.ActionGroup;
# [9 l# z& }% h5 j) f+ s3 F* Kclass Agent {
0 K  Q$ P: B' t5 X! m        char id;
) Q6 T* u' H4 y9 a
  f( N9 M: r5 B; x% {0 ]9 D        Agent(char id) {' Q/ P% S$ @3 [$ U0 G+ {% h' Q
                this.id = id;) X5 w+ e/ y" a+ W
        }
! Z& `5 i, }# u; Y* A; d( J5 X1 V
# z- ?' l# h! o- T        public void agentStep() {
% O5 i0 ^' g. d0 t1 k- `1 P                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 j9 K; l0 q" x/ ]0 x, {        }
* `8 \' Y  \& u! q4 X( z6 m( ]}
% \1 t( o' G5 u7 q7 A8 R3 y* Z
6 B6 c, S& C  C' xpublic class ActionGroupDemo extends SwarmImpl {
# D' s2 H! K- N" x( W        ScheduleImpl schedule;3 R% l7 i; p; q* }2 S/ \
        ActionGroupImpl actionGroup;
& g, F& D# b1 W7 |/ W        ListImpl list;
. W. }% j7 m& y, g8 V        char Id = 'a';
. F) y0 ]8 Z& `. f- Q/ ?
5 z# ^. ^+ b( z) P" I% v        ActionGroupDemo(Zone aZone) {* J7 I/ [3 b' `# b' |0 u& r- y
                super(aZone);
0 |! p0 ^$ ?4 T1 f% B/ [6 p                list = new ListImpl(aZone);
5 U, f( `4 `: y. X4 r                swarmSetp();! B/ z. @$ N3 d1 ]( t0 ^% [) Z+ @
                actionGroup = new ActionGroupImpl(aZone);6 Q& w; m4 V+ Q) y
                schedule = new ScheduleImpl(aZone);
7 I1 n6 W5 q: M$ R# I                try {
1 O6 Q; S+ t, o( N7 l& n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 F; `7 e; n3 v; G( p. F' g) a; R9 Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; W; ^) W: Y3 g/ z* p9 b, I
                        
7 L/ a7 A  V, k9 |3 x2 o! O( B' J                        actionGroup.createActionForEach$message(list, agentSel);2 {3 d: J+ D8 f( |& Q" u  J! {1 L1 v8 ^
                        actionGroup.createActionTo$message(this, swarmSel);
7 q1 R' Q' @% V4 H                        schedule.at$createAction(0, actionGroup);, @9 f9 @! i" }  |' v6 q/ @
                        schedule.at$createAction(1, actionGroup);+ P3 E) \8 x3 Z& n5 y; }/ ?
                        schedule.at$createAction(2, actionGroup);# O. b+ q  A# {- k
. ?- O( ]$ S) W- ^9 k) }! Z+ H
                } catch (Exception e) {* o" M. a9 R  U) `3 Y7 h; W2 m
                        e.printStackTrace(System.err);) P" W  a2 a; c3 a/ Q; U" e0 S6 R
                        //System.out.println(e);
6 G! v" |+ j! X2 ?+ ]                        System.exit(1);
+ V  m& A' Q5 s' g                }) f% U5 W+ _9 P

8 {7 X. p# c& f1 r0 K) v
! c" d1 e) D% z        }7 e0 T0 D9 Q  I
1 t6 Z& Y9 P. f$ z) w2 w
        private void swarmSetp() {' E4 ]2 s0 D# v& p9 H  D$ m
                list.addLast(new Agent(Id));
3 N: B* d9 u9 [! D4 x5 M7 Y/ ~1 E                Id++;
: P% t/ z0 m1 e, l$ [/ s( g: L0 N        }+ P  N' a+ ?2 M& y! l
, A# B* N9 t: y$ X% U, v
        public Activity activateIn(Swarm context) {' G/ s; I1 H5 T  G9 f/ ^: Z# c
                super.activateIn(context);
, F) ]$ z- `+ R- `) H+ d, \  G! s                schedule.activateIn(this);3 @  C# g% s' I; }6 a
                return getActivity();
0 B6 G  v5 s( x6 E* b        }
$ b. `" R6 W( ?; g4 [3 Q6 ^7 V8 d0 V, W, c5 P
        public static void main(String[] args) {$ q- |1 Z: [* I
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 z- q$ {/ V; z" S' @# Q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 y7 A" e0 o1 C# E                swarms.buildObjects();2 }# l( K. [. n+ V' x, k0 P. H; W8 j/ U
                swarms.buildActions();# E7 _8 v/ P) Q2 U
                swarms.activateIn(null).run();- J, c. V' b" s9 X$ s
        }
( Z1 m7 a* _- t1 a" v/ E) \2 B8 c- X! u- @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-15 22:57 , Processed in 0.014021 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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