设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6785|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 `8 X! _5 D; P/ J) g* c
# O3 }7 z: r2 {$ F" v# v- s5 N$ t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' V4 g3 p5 p  _0 p8 E. W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
  y1 P& S8 m7 Q. T; Jswarm.SignatureNotFoundException  \9 f& G  u+ p: ~' O
        at swarm.Selector.<init>(Selector.java:76); A8 F1 _1 Y3 q" Z+ G) d1 \4 o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& w  s/ s1 R7 b4 I, R7 P! M
        at ActionGroupDemo.main(ActionGroupDemo.java:67); h5 a% a- w+ x% O5 |$ l. Q2 l

- e  Y* x! z7 U+ D8 G9 f2 B0 ]" @0 u0 f# s' h5 v
import swarm.objectbase.SwarmImpl;; e1 `/ ^- X1 B2 ~3 @: D7 W
import swarm.objectbase.Swarm;( r: Q0 |; R5 n  J
import swarm.activity.ScheduleImpl;2 X7 X; G" K- Y+ W! ^& i
import swarm.activity.Activity;
* F# f/ v( q7 Nimport swarm.activity.ActionGroupImpl;0 D( R% S% S; M; ?
import swarm.collections.ListImpl;
' m' a* x( A) B- l: ~! ]7 b: h' simport swarm.defobj.Zone;   w( K$ k3 T+ e- C3 ~& e) j
import swarm.Globals;1 ]% E) x9 m; f% e& I- v
import swarm.Selector;$ g  U  c" ^3 x1 ?/ S# Z
import swarm.activity.ActionGroup; & @: K) c9 A1 y5 ?  L) {% m" J1 Y* _; f
class Agent {
( W2 W* C6 T3 V6 J5 y        char id;
! p! f! l: E3 Z+ }; G. j
# c& F. Z, v2 [% h        Agent(char id) {; @3 i0 |3 _7 T4 [. k
                this.id = id;7 d1 ]- l2 J; @) {, E: f
        }! O8 V2 g; ]% E
/ }2 k1 I. E4 W; u- T. I+ y* Q
        public void agentStep() {
/ J( j5 S0 Z/ [  ?7 o1 W3 {" R                System.out.println(id + ":" + Globals.env.getCurrentTime());
% {, g5 w& A) H: Q, V$ E( Y        }) w9 E% m) U5 O/ _2 [$ P1 p/ d; ?- t# R
}  V6 G& l9 v0 ]+ R8 K* t. v
0 t' \- D+ t; K! K+ o
public class ActionGroupDemo extends SwarmImpl {
1 Y/ X$ C8 w+ y) y0 }        ScheduleImpl schedule;
$ N/ ^- D# i' H! y7 L. N) i) R        ActionGroupImpl actionGroup;
# u4 y3 u) l3 a        ListImpl list;& N( t* E9 P8 e/ b0 p7 n* X7 K
        char Id = 'a';; a4 Q9 X8 q" h6 `9 q, y/ {  b/ s
; L/ J2 v! Q( Z; J, G  g
        ActionGroupDemo(Zone aZone) {4 W2 e* y( w- X* i; X
                super(aZone);3 x+ \( H4 m6 W' ~1 D4 k: K1 n
                list = new ListImpl(aZone);
( d& X. \0 l! O; e; ~                swarmSetp();
- x- F' Y% a* b                actionGroup = new ActionGroupImpl(aZone);; F  u9 R8 t' X6 i" H; p+ j$ O
                schedule = new ScheduleImpl(aZone);% K' `& L7 Y+ H. W+ T
                try {
9 ~+ R5 k& ^9 }                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* y9 `/ R0 @% U6 [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: w+ i5 x3 s( A% B2 q3 N1 H' N7 U; |
                        8 Q- x1 {2 b7 }9 f; X  ]
                        actionGroup.createActionForEach$message(list, agentSel);9 |5 _4 }' f$ g( t6 R. X6 y
                        actionGroup.createActionTo$message(this, swarmSel);
) q- t- a/ A% \7 I) x/ E                        schedule.at$createAction(0, actionGroup);
- f" R8 j5 N. J/ g$ _, `                        schedule.at$createAction(1, actionGroup);, o5 ?" U/ A3 n# q/ Z  z; C1 L
                        schedule.at$createAction(2, actionGroup);
! H8 [! p* X  S; ~! j, H+ t3 A+ c5 V' |5 Q) _5 j
                } catch (Exception e) {3 F2 V: U; B% B' U" {5 s
                        e.printStackTrace(System.err);
" z, R' h% Z- i1 {$ j& `, A0 @                        //System.out.println(e);
. l: i: A- |. a1 w0 F                        System.exit(1);4 ]: _6 g% u+ ]+ i$ \
                }
0 S9 J4 Y! i/ E/ L9 x
7 o3 t  Z- }  f7 v. {( y
; a( _* J- _: B8 V        }
, w1 g: ^0 ~9 l& _" Y$ i- t# `+ }1 ]" e
        private void swarmSetp() {
0 m& e3 T* r) b( e                list.addLast(new Agent(Id));" e) I9 v  k+ e
                Id++;3 F+ n* P7 g( T4 N8 o& J1 z; C( |
        }1 B, B, m1 C2 H2 [% s

% \% E0 N1 [0 U# b2 s3 u6 o" G        public Activity activateIn(Swarm context) {  e0 q/ w' W9 V% a5 |& ^
                super.activateIn(context);9 z, q, H9 |! D9 J6 C
                schedule.activateIn(this);
5 L9 \; T, i  z$ }2 j                return getActivity();9 Q! ]2 T5 i" O5 Z* k
        }  n6 U# _" l3 p" L, @3 V! f' C/ p

+ {9 N7 w( ^/ z7 y& j        public static void main(String[] args) {
1 v/ b2 y2 R8 q! {' @( O% @! b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 V5 }: x) a, B- M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 l6 p4 w1 X  y
                swarms.buildObjects();
1 V4 W1 C  c9 z' F! s) G% G                swarms.buildActions();& _$ L8 [2 R1 y  w) ^# e
                swarms.activateIn(null).run();; C% P# R1 ?: ?! a9 h+ \
        }$ F- G! b  g: m" J3 ^

. |# b& I% V2 y' ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 06:35 , Processed in 0.015292 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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