设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9135|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # m6 u& G9 a( i+ J0 ^/ L
/ r. W7 {1 n: s! O- |2 x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 T/ A( Z/ ~/ _, M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 p& R! V6 Y. J9 ]8 F( Z1 ^swarm.SignatureNotFoundException
! S& H0 @& |4 n' K        at swarm.Selector.<init>(Selector.java:76)0 q" n& f# p/ `+ a0 e+ {& C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ `( e7 u( C& ~3 {: G* b2 t* @        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 e# T. y) T  h" @7 z2 w, J5 \; c, f6 i% |

$ l* R- k, \/ C! m* t' n( ximport swarm.objectbase.SwarmImpl;) {' w4 f# ]/ C9 L: h% x
import swarm.objectbase.Swarm;5 T, H- U" Q+ ^+ ~$ e
import swarm.activity.ScheduleImpl;
: N9 p! R7 D! vimport swarm.activity.Activity;$ v) d6 _6 y# S) Y
import swarm.activity.ActionGroupImpl;0 y9 m! [( `4 e0 \: E: q1 P
import swarm.collections.ListImpl;
7 ~4 M$ E% U; Yimport swarm.defobj.Zone; + E" r- V$ i# p0 j- F) J1 z
import swarm.Globals;
8 Z1 T; G8 I# h- vimport swarm.Selector;, O# Z* `, @  A
import swarm.activity.ActionGroup; 9 O: U7 ~1 P$ W8 F
class Agent {
( {! U8 g  }3 n  I3 Z" X        char id;4 h/ l, u$ F, e' R8 b
: e4 c2 g# a* \) z% {' e9 Q! l# y4 B
        Agent(char id) {& y% ]2 H8 N" N
                this.id = id;" u  s) v5 ]8 n
        }  I0 \. E' v# s! Z+ D5 W) ?# A
+ M; I, y2 Z% G+ ^- Q& j2 ^
        public void agentStep() {
% e: U6 c! x0 j5 H* A! c. y) ^0 X) K                System.out.println(id + ":" + Globals.env.getCurrentTime());9 U4 n' C* H" S8 Y( e2 [
        }% H% @1 l( Y# x5 f; s+ o: t; x+ A
}
% t  z' x7 ?# j
: Y1 ~* W" e. B" j, V/ Ypublic class ActionGroupDemo extends SwarmImpl {
- |" ^8 m+ L0 m0 |0 o. t) K$ `        ScheduleImpl schedule;
4 e4 @1 \7 z6 \        ActionGroupImpl actionGroup;
/ H) ?1 K2 o) j7 i% d  D  _, _        ListImpl list;- Q( e8 v% q: `. b: O1 D6 D, l4 ?1 h$ [1 z
        char Id = 'a';
  \* f" l; |2 ], W  z- M% t# l% J. b$ x5 h
        ActionGroupDemo(Zone aZone) {. l9 R3 e% N7 J: T2 p/ b
                super(aZone);
6 g3 x$ @7 F/ e4 g                list = new ListImpl(aZone);7 ?+ ^% m0 Z" Z1 q) s! x1 H( a
                swarmSetp();
% d/ @8 P6 ^  b                actionGroup = new ActionGroupImpl(aZone);
1 k+ \1 {6 v7 j# h0 T; N0 n: @                schedule = new ScheduleImpl(aZone);
6 _1 A( t3 h( C9 ]# C                try {
: C2 [# ^; b6 @$ B. j& E7 D9 ]                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  A% \  C; Q% Z5 T# N* b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& |7 O8 T) C$ g, w
                        / \8 e& N; {/ a  u
                        actionGroup.createActionForEach$message(list, agentSel);
1 i1 T! N% c! J  N0 T  \                        actionGroup.createActionTo$message(this, swarmSel);
7 |8 C& [1 ~! j                        schedule.at$createAction(0, actionGroup);
/ ?9 S3 f% S/ O+ L# G' {                        schedule.at$createAction(1, actionGroup);$ G+ h8 E& `. N
                        schedule.at$createAction(2, actionGroup);) P- l# W/ [% D% J1 E. H
, i) G3 a( {# ?
                } catch (Exception e) {
# g* z7 K/ y+ y6 ~6 n3 R( E. p                        e.printStackTrace(System.err);
. E. F* v# A: k- J' k4 q                        //System.out.println(e);/ o+ ]# U/ ]. @, L! F; S
                        System.exit(1);- @! ?1 V( e! f2 g. `! b' D( I+ Q
                }
! C) M+ }" Z! j  q+ @5 s
. g6 H7 }. _* H2 i0 O0 S
' s9 i" }" P* Z        }( @$ n+ S  p2 C" F6 L: m
" x4 w, R8 F& C5 w* r6 M; g7 }5 ^
        private void swarmSetp() {. a' A3 j9 }# Y3 [0 r
                list.addLast(new Agent(Id));
; P9 j4 m- c9 m& ]8 L                Id++;
0 b) G, J1 U  e/ n' O        }& G' W* i& G7 N# _( r5 ~# O

# V% ]7 ~# H; \1 K        public Activity activateIn(Swarm context) {
7 b, r# {: L4 x* |5 W+ E% G' _6 u                super.activateIn(context);
1 K5 K! Q: C# Q% S( A+ M) _                schedule.activateIn(this);5 p% m* A( p' U- I8 f' p8 l1 ?
                return getActivity();
. I( s6 @$ i2 r0 C# p1 Z% ^5 G        }
# v# i* |, U3 Z
- c+ z& i  R1 c) \        public static void main(String[] args) {) G  i1 O- V& Y8 M0 h
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! x& P. O- J- ~# L1 m7 W# y. L- B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" I% o- f$ t8 h" g" a+ ^$ k' ]2 V
                swarms.buildObjects();
1 O. E0 |5 |+ Z6 D" Q: C* G- Y                swarms.buildActions();
1 c- Y3 {; b3 g- x& G" `( |7 X                swarms.activateIn(null).run();9 \6 U% _/ S; d0 j2 O7 @
        }
& \1 V; l& _6 S- `5 z- x! q6 _8 w4 D; ?; e  K& n) Z. `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 10:37 , Processed in 0.017310 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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