设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10073|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" @7 l  m$ W, I& |1 R: j$ T6 k6 g' v# z$ ^6 w/ V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& \# F/ o+ T$ X+ j/ _/ u7 m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 v: M( V' S6 Y4 \( n) E
swarm.SignatureNotFoundException/ [; j" `% i+ s# D+ F
        at swarm.Selector.<init>(Selector.java:76)2 N- J: ]1 _6 q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# U- p/ T) O: j2 b( V% p3 N. H
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) S8 K  L  u/ x; e% `0 I! i3 e/ D" s3 W+ c" ~9 ^

1 f5 `8 R: S3 U: Kimport swarm.objectbase.SwarmImpl;
3 u4 t( l# Y3 P0 g2 Rimport swarm.objectbase.Swarm;
" a# d$ Q0 g0 Mimport swarm.activity.ScheduleImpl;# r# `7 N) Y3 Q$ y0 _# G8 n8 t# f
import swarm.activity.Activity;
5 X9 W2 H  w$ Z7 Q( himport swarm.activity.ActionGroupImpl;
& ]4 _( T0 C) [# timport swarm.collections.ListImpl;
/ k1 `6 P2 _7 @. H. t' Y, E8 y* Bimport swarm.defobj.Zone; 4 E$ `/ n( ?6 X
import swarm.Globals;
5 f. V0 r' f* B6 T& k/ Rimport swarm.Selector;
  o' x3 F  S7 h1 ^* fimport swarm.activity.ActionGroup; 7 t5 x: g; U# z
class Agent {7 U. x' i) L' w* D% s5 E
        char id;$ {9 U4 [. J% W% e: ^( W/ C
* w' k7 e6 U* U2 a" o
        Agent(char id) {
( ]* r/ @4 n( e6 \) D                this.id = id;
& F+ E4 S/ _* |: ~' m# z        }
+ o0 b0 {* f/ X' Q+ \: \+ U3 `5 _# k& r; m
        public void agentStep() {" w% }  n5 x! o5 T9 B' ?8 \
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 x: I) R  J0 T; o( u( G: m" `/ H+ ~        }
  Q+ [4 X  U, q4 _}$ Y1 t! m+ X. P) O
# T3 Y( z- L; P
public class ActionGroupDemo extends SwarmImpl {
- K$ c& E8 [; }, x+ x" u; C0 z        ScheduleImpl schedule;
, u* B) h, ^* \$ i  ^        ActionGroupImpl actionGroup;( g' P7 Q3 D; @/ w
        ListImpl list;1 w1 {% H% @6 T
        char Id = 'a';
# j( x  }) w0 D6 E- R
0 T! J4 H+ B- l9 y* o        ActionGroupDemo(Zone aZone) {: R/ h4 b5 C# X. Y1 J
                super(aZone);
$ H% U9 f! G* ?0 `/ n                list = new ListImpl(aZone);
$ `4 [% Y; F  {8 Q) Z7 n1 s- |+ I9 h% V6 m                swarmSetp();
) y: M/ r$ w+ R" W  H0 u                actionGroup = new ActionGroupImpl(aZone);9 o( E4 b: J' G0 i
                schedule = new ScheduleImpl(aZone);
7 _" n- v) A9 W( ~* T* v4 x! Z                try {
7 k0 H' k6 _; j7 ^5 p' h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 F) Z* r8 V8 E' Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 G' _6 s2 p4 A- t. E- j                        & s1 o7 G# u& T# B9 r, F4 A
                        actionGroup.createActionForEach$message(list, agentSel);8 @6 y- n) F, C" Z
                        actionGroup.createActionTo$message(this, swarmSel);
" x9 U, h' Y' }                        schedule.at$createAction(0, actionGroup);
5 K5 H2 x+ v7 \/ _9 j* f5 S+ U                        schedule.at$createAction(1, actionGroup);
0 f) X) g% J) B3 I                        schedule.at$createAction(2, actionGroup);
) J$ h  J% L0 D) \2 m2 p; h& i& k4 y4 j
                } catch (Exception e) {, U- ]6 K- g) ]
                        e.printStackTrace(System.err);
6 G: ?0 u, S4 I3 q! E; y. I+ q; {3 ]                        //System.out.println(e);8 q& R& \( q% c( I
                        System.exit(1);# y6 \# I. C- P6 }+ ^  E! ^
                }
5 i0 S  C" f: D5 y* `+ ]! p) P
& {1 P3 D' s% K7 D+ g
/ w* Q! V0 R  F9 x        }
5 l+ v0 ~" j6 w, z, b. l3 m; G
3 D# c0 o$ |, u: _/ W/ d! r        private void swarmSetp() {; R- c$ I6 F. V( k
                list.addLast(new Agent(Id));9 H& h; n3 |( s+ c& a1 T
                Id++;1 d6 B0 B: K( j) S" k8 }
        }
4 z& P  L. ?4 \
6 [( z( S8 f5 @# R% v0 D$ C        public Activity activateIn(Swarm context) {
0 @1 R0 Q$ h1 N; q, t% T                super.activateIn(context);
" S" u& r+ |% t: Z                schedule.activateIn(this);$ q! U4 c# F' c* V
                return getActivity();
' C8 X7 A3 o! u3 i. }5 O        }( _# T' [7 L0 b% v# Q. [3 i

  j& O+ K6 d; N; H3 T% f5 O: \        public static void main(String[] args) {
+ H% A+ |; B# L+ U0 Z: I                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( z$ K1 g" A, c& U1 G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" R2 {* i3 ^  ~                swarms.buildObjects();2 A' E9 ?, G, p! h5 G$ n
                swarms.buildActions();
% y+ j9 O" F7 Q) Q                swarms.activateIn(null).run();
% g) w- B4 b) l# ?+ F8 H5 Y        }
$ x/ c5 v2 ?8 Y/ B* e9 z  c% y: s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-2 18:15 , Processed in 0.017860 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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