设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6319|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 l% Y; y0 Q+ `+ S! g- c& ~
: D& B: m: L# f" G# `/ c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 C' T3 S1 E* @' K1 v; `& Z- K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: p$ _8 L: U( W$ ^% I% J' ]swarm.SignatureNotFoundException
8 `1 o! h# I, H; {* ~# R0 v        at swarm.Selector.<init>(Selector.java:76)
- ~8 `' h2 t0 i        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) c9 E7 V7 g. |. ]
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( B! B8 {3 |. U. y. z
5 i" Q( g1 b2 A1 w3 K: A  N# ]( \- R. A. D. d9 W2 ]0 @! Z4 h, E. F
import swarm.objectbase.SwarmImpl;4 V  K& v4 N2 ~- \. G- D
import swarm.objectbase.Swarm;5 l/ I3 S, v& e7 `
import swarm.activity.ScheduleImpl;
4 p- `2 I% n  i0 @" F* H, v) X8 m/ J/ nimport swarm.activity.Activity;; |) ~8 Y; S' e2 N1 [
import swarm.activity.ActionGroupImpl;! y; ?, p- L9 W- \* Z/ T) x
import swarm.collections.ListImpl;
1 @3 u0 C/ D5 j+ E/ ^2 qimport swarm.defobj.Zone;
/ Z+ G" H1 ~, S6 O& ]( jimport swarm.Globals;, A9 f. U- [% {5 ~
import swarm.Selector;
2 S% J  M. k, k/ r; e; bimport swarm.activity.ActionGroup; 6 Q7 L/ ~5 t# q8 V( ?/ E: `- X
class Agent {
# C4 V% E/ Q5 w: L        char id;
6 ]# y( n) c, y" H& g
# {$ P1 q* k2 N        Agent(char id) {
6 ?5 d' }& I0 ^& h' b5 a; T                this.id = id;  [, s0 b0 `( \  F. R
        }9 ~/ ~* ?3 v6 Y( ]) E: Q

5 L6 b; T+ }3 Q: d        public void agentStep() {
% d6 a. I! s% z                System.out.println(id + ":" + Globals.env.getCurrentTime());
. Y) [& y! B: ?5 b( X8 j        }8 I# d1 j% {- i% f7 O' p# W; P3 z
}
. S7 Q' O; f" [4 e5 D
6 B- Y* p9 h: L6 F& spublic class ActionGroupDemo extends SwarmImpl {
; e& _1 J* W3 `% G! t1 H        ScheduleImpl schedule;
- N+ [/ |8 Z2 `5 j. k+ `3 K" i        ActionGroupImpl actionGroup;8 n' j; |1 d" @) Q+ N
        ListImpl list;) ]) P  b/ {7 F
        char Id = 'a';
7 k5 q" v4 [9 v  c# P2 t: j1 ]' E" Y! _/ S/ A  I# T! Z% R+ k
        ActionGroupDemo(Zone aZone) {) C4 y& ~9 m; U6 F1 A
                super(aZone);4 E' `' k; Z% ~$ E2 Q- n" {
                list = new ListImpl(aZone);: R- A% p8 ]* z; t) {5 {! T* j
                swarmSetp();
& g2 O" a0 U# d7 u) ~1 z                actionGroup = new ActionGroupImpl(aZone);( i6 }- I; `3 H4 n0 b" ~
                schedule = new ScheduleImpl(aZone);7 D7 z1 Y1 Z( d/ ~
                try {9 M1 P, s0 b2 J; q  R. ^5 j; P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 t7 M4 E8 C* c9 k0 K" R# C; b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' t: L; w  Z. p: ~/ H
                        
7 G  \# ?, O+ k/ D( Y' n# z5 d                        actionGroup.createActionForEach$message(list, agentSel);
, {* e. G7 d: d; [! G                        actionGroup.createActionTo$message(this, swarmSel);! k# }5 ~; b( u1 J# O7 E
                        schedule.at$createAction(0, actionGroup);
3 p, z4 _* {3 j6 }3 w  W. o                        schedule.at$createAction(1, actionGroup);. c1 U1 L5 z! m/ Y" C* w' G' s
                        schedule.at$createAction(2, actionGroup);+ o. r. K# w1 p. I$ I/ R7 f
4 Q. a! C. K7 I  f  e6 ]) d
                } catch (Exception e) {
  T9 N- M0 V3 j% j                        e.printStackTrace(System.err);9 F+ {# `* n1 Y( h# Q" _
                        //System.out.println(e);. V6 j9 C2 C6 h5 m1 W
                        System.exit(1);- p7 J% a2 J  f; V1 `" R
                }
. z2 r: m) b. L% E7 D6 _4 P5 ^, H) S' b5 J7 }- k
  j- K6 f  t9 m9 v( _
        }. G$ h" Q$ m; }! I7 E
. P( n$ b& |1 z8 W! w/ k" V: F
        private void swarmSetp() {  q; H0 X3 S( g, F5 c+ n, E3 o
                list.addLast(new Agent(Id));( {( Q( t+ h/ j( L6 b/ ~
                Id++;0 }5 p* t- s* M7 b* s5 {9 }
        }
' a, i) p7 l0 X8 P! R
3 I) n0 W3 e" i% l        public Activity activateIn(Swarm context) {9 O6 C/ B* h. r9 y% I5 P
                super.activateIn(context);
" F2 E6 T# W0 g! J. ^# `                schedule.activateIn(this);$ q. \3 h  w( s( U0 x! D( P6 e% P
                return getActivity();
7 ?$ t* E. T4 a& T        }! q1 |  ^% ^4 J6 m! o  Y( _9 x

( [: v4 F4 Z1 s$ e  S' g' V3 s        public static void main(String[] args) {
! I& x8 G6 L8 t7 ]- O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 {0 D# Z5 x5 I. s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 `4 J& B# _7 c                swarms.buildObjects();5 W1 z3 h  A2 v" u3 G
                swarms.buildActions();
. j- h4 a& v6 H  n# m; c3 G                swarms.activateIn(null).run();) B5 x' K7 B3 B  C1 m+ `
        }
# |5 c6 `" l) W! X* b" K3 J8 j, k5 T% n8 h2 C( d8 p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-25 03:45 , Processed in 3.052957 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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