设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12165|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# Z8 R. G1 a& {! ]& V* C" J' W* h+ E" {% r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  H! m4 M" b9 d0 H  r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 W+ y- B) Z. u2 Z& A& Z9 ~. U
swarm.SignatureNotFoundException8 J3 x& T. p6 J  G- h
        at swarm.Selector.<init>(Selector.java:76)1 Y. [- K. z. z* k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# r; U: O5 y3 U        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* {4 g: N$ Q4 R4 b& p: X5 f; [# b/ {0 K: o: V

  H' P" D2 q" u% d1 v; C' pimport swarm.objectbase.SwarmImpl;0 `: f6 Y# o2 c& P) N9 ^
import swarm.objectbase.Swarm;
! W; H/ k. J0 q' b1 z4 V& S/ ^import swarm.activity.ScheduleImpl;
( W5 d2 I& H, I) j- A+ Qimport swarm.activity.Activity;7 e1 U7 m2 K1 {* ]4 o
import swarm.activity.ActionGroupImpl;
1 J, A3 G7 z9 {) dimport swarm.collections.ListImpl;% y- O1 ^3 N" M) B0 B
import swarm.defobj.Zone;
, v3 c6 E* M0 u* T- l  ]8 p  Yimport swarm.Globals;  h" r$ S1 f" |7 ~; S$ u% q
import swarm.Selector;/ i7 P7 H! t% C& O, f$ n
import swarm.activity.ActionGroup; : c! W6 D8 K! y
class Agent {
2 g/ Z. T( _6 C& B0 v5 ~        char id;
1 i" }/ L; Q& i
4 s8 c0 i& n4 A. x$ p7 s8 h# k        Agent(char id) {2 U  C) x* l" v
                this.id = id;; j/ d" j. b* |. k) g1 _. g7 E$ s
        }
: c% _: o8 U1 ?. _! Y/ h' C, O* j. Z( I- B5 `0 w# U+ k2 J9 S
        public void agentStep() {3 X' W( E* Q/ c  F: n6 F
                System.out.println(id + ":" + Globals.env.getCurrentTime());* W; t1 W$ |( h; z( U7 W- m5 F* {
        }
9 o3 o7 r+ \; Q7 h+ i- ~8 ^/ z/ r+ {}' v' w2 c5 J& A5 s  g. F* H

/ R) q; m( u" h: Wpublic class ActionGroupDemo extends SwarmImpl {
: e/ D; X7 t+ E        ScheduleImpl schedule;' D5 G9 Q" F8 _8 R- g
        ActionGroupImpl actionGroup;0 J$ \3 H0 Q; _3 |: ^$ L
        ListImpl list;, H6 [0 S% j) c8 z
        char Id = 'a';
6 D9 M5 N5 G: J; f# R! l0 ?/ d- H1 k$ D. c
        ActionGroupDemo(Zone aZone) {
+ M) _9 ]7 j2 X  c( |% }  T. ?                super(aZone);
, q5 i- M! Z  S8 i                list = new ListImpl(aZone);
# o2 w: r: o/ W" d& R& B                swarmSetp();
7 p. \  W; J+ G$ k+ z& s) C0 E                actionGroup = new ActionGroupImpl(aZone);8 m( }  O4 J% G2 M8 q
                schedule = new ScheduleImpl(aZone);
: v4 q5 P; o  J. \                try {
7 l; F2 j/ ^( `* i; j$ r% ?" ^' a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 b. D' d# I; N+ i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( j, N, e+ ~3 ]3 o" m                        ! W5 V: y: T" C
                        actionGroup.createActionForEach$message(list, agentSel);& y' L3 h9 A1 P* X, o1 t) W0 D, a
                        actionGroup.createActionTo$message(this, swarmSel);
9 Q9 \! V0 \; E                        schedule.at$createAction(0, actionGroup);
7 a1 R/ l" O# e; [% M" M                        schedule.at$createAction(1, actionGroup);4 Q4 J* m# n" H! K
                        schedule.at$createAction(2, actionGroup);
2 V3 f& [- Z2 N1 w4 x/ @( E, d7 m8 m7 A
                } catch (Exception e) {
7 n" ^. A! G0 q                        e.printStackTrace(System.err);
! P# Q/ S& z  f: A, R/ I' \6 f) Q                        //System.out.println(e);
6 O4 Z( W; ]4 V                        System.exit(1);
& P' V! ^0 r- v& r                }! R% n- D: k6 `2 X7 ~6 I

7 _! _/ g: B( [/ v, Q+ R2 g' y! p! K3 D: D' r4 g7 @
        }- J/ S* N* ?5 S6 ~
4 a" b- h' }1 W. C! Z. g! ^
        private void swarmSetp() {! A! `9 z5 g9 y8 L3 `3 L
                list.addLast(new Agent(Id));% v! U# F; ?6 w( B) E9 u( N
                Id++;
# s; a' d( B/ d) J        }& O- I- S. g  m# Y
0 Q$ q( D6 ]6 S* I) _: i* F
        public Activity activateIn(Swarm context) {% l# d) C+ G) h- ~9 ~. L4 t3 q
                super.activateIn(context);4 D( E* i. Z0 e4 X
                schedule.activateIn(this);' X) C8 i5 z7 `# B# O+ H4 w* `
                return getActivity();
+ s. E9 k1 `# K  d4 ~        }
6 _: U0 u8 [3 k% p( }0 I! `
8 U+ G5 J/ z# x1 q; E, `$ Z        public static void main(String[] args) {/ v" o! W$ m2 w/ y! Y' Y( M  r2 e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# S7 g0 G  c: p4 w' m7 {& W
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 X: ~/ o2 E. d7 [
                swarms.buildObjects();3 D) O% I& }7 \3 y) c, x0 p
                swarms.buildActions();
8 m! e1 F7 Q# a0 P/ o: d3 k                swarms.activateIn(null).run();$ G' l  D3 ]; k; p1 x! Z" H
        }! E: _) a6 B- F- g
# l* ]7 t  a; i7 b3 k
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-1 04:32 , Processed in 0.018360 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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