设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6725|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 D3 v  Z1 _/ l& I" y- W
, b& [9 S2 x% s/ u" k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ _! B: L. {% g% a! |" J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., F- L7 V0 A6 t( @
swarm.SignatureNotFoundException' g- V9 Q5 j9 B' i9 `
        at swarm.Selector.<init>(Selector.java:76); _6 |/ P  ~7 C5 t
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 u" y& z; `$ F6 ?3 W# Y: \" h: j        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 T- u2 F5 c) J# a3 G1 X4 z0 `( G1 X  T4 g5 r. e* A
% P+ a& Z; a, u/ v: v! K; X
import swarm.objectbase.SwarmImpl;
% W7 X7 i" o7 _4 [$ [import swarm.objectbase.Swarm;
% w8 C5 L; m; [/ H* Pimport swarm.activity.ScheduleImpl;
" M" e/ `. @. P  fimport swarm.activity.Activity;
& K! c) ?4 O. ]7 S* kimport swarm.activity.ActionGroupImpl;" x) m& ~: V" u! y" w6 l* X8 Q8 x
import swarm.collections.ListImpl;
7 \  h0 X8 W" y4 Fimport swarm.defobj.Zone; % }/ ?$ e) a( L& Z: Z
import swarm.Globals;, m4 l* Y* d2 g2 C8 ^5 O
import swarm.Selector;, O1 K. k, x9 @: S8 f
import swarm.activity.ActionGroup; 8 {" q9 @8 l# a# M3 E
class Agent {3 ~0 e- a- Z' a
        char id;
  Y4 Y" t1 _7 j' G; F% D9 U7 U" M' R% |- V- j7 H
        Agent(char id) {
1 |- u/ Z+ i  v- h" E6 e                this.id = id;
  o$ m, m1 H3 C        }
' P3 ]/ j5 E# H
' R* N$ I8 |9 |5 T) H        public void agentStep() {
% O; `- O6 j0 e                System.out.println(id + ":" + Globals.env.getCurrentTime());9 k2 }6 T, w$ ~7 d: B5 L
        }# s, M, s( T' t
}' H1 `6 s, k6 g( h5 c# j

: `& `# {# [# Gpublic class ActionGroupDemo extends SwarmImpl {& k- @$ g4 \9 E" ?  B
        ScheduleImpl schedule;2 M* g9 w' [! J
        ActionGroupImpl actionGroup;+ ^. h" ^5 Q; k7 h$ d' p
        ListImpl list;5 [$ w* E2 ~! i8 ]( r1 F. D
        char Id = 'a';
" K; n. y* w, g. K& w0 e* ~: B1 U* u1 M* ?* }& y  ^; @) u' u
        ActionGroupDemo(Zone aZone) {
3 m- Z. Z; z+ U) P4 x  k) d6 P  Z                super(aZone);
# |- I8 f& ^% r; U( Q- v7 f# f                list = new ListImpl(aZone);! m5 V  x8 ^* a; S5 l& d
                swarmSetp();# A" H0 a0 w  X. u2 h
                actionGroup = new ActionGroupImpl(aZone);
( [) h# G( J2 ]2 b                schedule = new ScheduleImpl(aZone);
+ A3 A' d9 r' O* q. X                try {* U2 H  r( [; Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( z. x/ B" {2 K5 Y/ e# H% F7 F/ s                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" p+ {& W5 U% Y6 {
                        1 H  e$ f* r& l4 x5 p# d  e0 N7 x
                        actionGroup.createActionForEach$message(list, agentSel);
# J6 E) e; C$ E8 M6 m$ i& A/ b                        actionGroup.createActionTo$message(this, swarmSel);
$ p+ \; g( N: {8 W' c                        schedule.at$createAction(0, actionGroup);
2 c( U# z# N+ ?. ]0 v( f) O                        schedule.at$createAction(1, actionGroup);5 O8 _5 I0 j5 b5 I
                        schedule.at$createAction(2, actionGroup);
" Z9 q' Z' j3 O8 d$ |& D7 g, A  O3 i+ S2 P
                } catch (Exception e) {
. W6 u7 ?# I- C3 B# c& U                        e.printStackTrace(System.err);* P0 \" n2 k7 O+ Z  J+ E. b0 D
                        //System.out.println(e);
" U  m6 h3 Q5 h0 Q" q. M/ T                        System.exit(1);/ g5 m/ k6 o- M6 ~( V" \3 F( w
                }1 d- u) {  s2 r. i' ?; x

9 x; l! `% A& b' x) e/ }7 q& s4 v8 C
        }
, L7 n0 @  ?2 r' ?' a- g+ A; P5 l" H8 d
        private void swarmSetp() {
/ p: J; K9 H! q+ s                list.addLast(new Agent(Id));
: F& L5 E3 l5 `1 p3 J( y7 G                Id++;
0 n3 S( c" t) p  {, Z        }, a' U3 z6 j- ~, B% j

7 R, I  v* u5 Y4 _) _; X0 [        public Activity activateIn(Swarm context) {
/ u8 J2 `' \6 {9 b2 F, R                super.activateIn(context);6 s8 s' j1 A/ c) y* W( F
                schedule.activateIn(this);' \& o; a- u! M5 v5 _; k, d
                return getActivity();) d4 v0 S: C$ H' L" E  o
        }
3 R2 h3 F* Z. V$ n7 I) p! i) [% A* p$ r- m( Q% g1 S  w
        public static void main(String[] args) {
! A* N1 `( l' B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ `( S6 N* p* Q5 M# I( K+ P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% }0 j' _7 z3 d
                swarms.buildObjects();0 K8 f9 }! v; v3 K: D2 w
                swarms.buildActions();  K; z4 |  T6 L) b+ r8 a
                swarms.activateIn(null).run();  B: M  c, R: v/ s$ q2 j$ v6 _
        }
" \# [1 t. i0 L* w+ O9 }& P8 }( D. ?4 }! G: C" L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-7 05:59 , Processed in 0.018810 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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