设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6776|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 ^" P0 i: _  G
7 u6 G6 U9 U. ?' V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 m( ]' w+ K1 _  E  P( ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 ?  u& n4 [4 i
swarm.SignatureNotFoundException
% W  r4 Q9 q8 O1 s, o; U        at swarm.Selector.<init>(Selector.java:76)0 E1 n, r5 Y2 ~9 y+ j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 k; m3 B" J! r9 I& H        at ActionGroupDemo.main(ActionGroupDemo.java:67)) V8 w; Y" f5 \3 R. d7 H7 {% g/ g( T
6 u- |3 {2 |: d6 L  P/ x, d' x% |

2 m$ `3 C& O# gimport swarm.objectbase.SwarmImpl;. r0 @2 S1 t; m3 K
import swarm.objectbase.Swarm;
5 W3 p: h) P# nimport swarm.activity.ScheduleImpl;# v9 d  t2 O8 {
import swarm.activity.Activity;
' c! r2 t( @6 M4 d( R' rimport swarm.activity.ActionGroupImpl;
: u* ^! [+ Z, ?import swarm.collections.ListImpl;
3 o) T, V) v0 T: J$ K$ G$ }7 uimport swarm.defobj.Zone; ; J! R7 X9 o- _1 \" k2 H
import swarm.Globals;
: h: d8 f0 A. C* ~* Iimport swarm.Selector;5 |2 G5 K$ S' w! E5 o
import swarm.activity.ActionGroup; # c7 `% W9 M+ ?3 L
class Agent {
/ T4 t' \, [1 C) j        char id;5 d3 f5 A0 O; O% ], t

4 |% h( J' E& z  f& t6 b        Agent(char id) {
7 @) Q3 s* A, J                this.id = id;
$ f0 y6 x( s0 F/ s. \! N: N        }
$ @( n+ r- H+ a; L2 E$ D6 N/ O; V6 D9 M5 O1 J7 a# [
        public void agentStep() {
$ w- ]* W) N: T$ P( i                System.out.println(id + ":" + Globals.env.getCurrentTime());
  S6 K8 r0 C/ b" e) W( T        }
" l- B: c, U! ^2 E, m, o$ A' w}
6 u" L1 _. Q" Q9 y  L+ v
) ], }) A1 O( f8 X" Q. E/ zpublic class ActionGroupDemo extends SwarmImpl {/ l+ _/ n+ a2 l: [. G4 x
        ScheduleImpl schedule;) \. K: b' h9 Z9 o3 z! k, N
        ActionGroupImpl actionGroup;
! T) c: S3 L) S# `. N        ListImpl list;
0 q1 U. p& s' N% u9 i        char Id = 'a';
8 {0 t9 n) O1 u8 k% }# E: N" J  r. I: n& z: d! O7 L5 v0 S$ V
        ActionGroupDemo(Zone aZone) {
+ d5 @* Q6 O+ e3 {  b7 u! d- z3 V                super(aZone);
$ Y' l% X1 D, Y" O- ?9 D: h0 j* j& N                list = new ListImpl(aZone);' d8 V5 J+ A, _8 d% W% ?# B
                swarmSetp();
4 b% k4 k/ m) s                actionGroup = new ActionGroupImpl(aZone);# a& z' C3 H6 e" ?# a
                schedule = new ScheduleImpl(aZone);- G) r( s+ V/ m* K  J' @
                try {! Z& r4 J- W6 z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. z7 Q" U: J3 f7 Z# B3 K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) E7 T- \8 p* u- [4 p                        + A( p1 j% @9 j0 l
                        actionGroup.createActionForEach$message(list, agentSel);! [! r/ b; v& d3 Z( i
                        actionGroup.createActionTo$message(this, swarmSel);
& I% \- P- ~5 V& u; A0 w                        schedule.at$createAction(0, actionGroup);4 E+ I; [2 m# z# K1 }' i% r
                        schedule.at$createAction(1, actionGroup);) @: H: J: u( |9 i, U
                        schedule.at$createAction(2, actionGroup);
) x1 n. {( Y6 Z- H4 E) x# z9 K
' G5 ^4 Z2 V, v                } catch (Exception e) {
' l2 m# [) n" P5 X, ^& i                        e.printStackTrace(System.err);6 M0 v5 i/ c) X! l* B' I
                        //System.out.println(e);  ?0 K) S0 O' {1 K5 J/ p; D" n7 P
                        System.exit(1);
  B; ~! ]' G; l  I, t                }7 V! o9 J3 H* E  X0 y( }: O' X
: s8 Y  w3 g; F, W8 v
- C# t& N9 b; \
        }0 M* e  T! @( A5 D8 `% {- A

. }- y7 U# L: \; H        private void swarmSetp() {, [6 v9 M6 q. Y3 A
                list.addLast(new Agent(Id));
0 |/ h1 F0 f! F7 P0 V) U5 D2 T                Id++;6 R( H7 o! e: O/ l& M3 u5 b5 y
        }
3 _& Y" g/ w0 Q3 ]' |: D4 l( P% V9 P! e+ ~) s2 J) k9 E
        public Activity activateIn(Swarm context) {  f" p- s) y( D: M/ J! y
                super.activateIn(context);. {! p+ l8 p# ^% E
                schedule.activateIn(this);- o. l: d0 B9 O
                return getActivity();! K! y9 D# j  d0 o2 Q8 N0 t
        }) s1 G5 l8 C4 E' R9 |% ^3 S: m8 J

+ y. z, f) \7 f9 f        public static void main(String[] args) {
" M5 L" V0 C: i$ M- @2 F2 Y  `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- ]% F  e6 Y+ m( p+ R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! P8 B3 ^9 G6 A7 B( u8 d                swarms.buildObjects();! ]1 A: R% R  Y, N$ y9 _9 A) d
                swarms.buildActions();
# c7 K2 E) C) r$ G& P2 S+ G! e                swarms.activateIn(null).run();
( u: z8 V9 i5 M5 i        }2 w2 K; H% M# ]  p" p1 f& {$ S
# ^. Q" t7 `% Z$ O% d) I; X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 00:19 , Processed in 0.015405 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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