设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9565|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 j2 Q9 V$ H* ?! k

% s  g) E. x  \3 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& O& D7 Y8 l! D- }9 G+ e$ o# R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: W/ _- h0 V( L) X, j9 g4 v& v; fswarm.SignatureNotFoundException9 }; U/ m- m  l0 `" A
        at swarm.Selector.<init>(Selector.java:76)
; _* H0 K4 G! G( d; j        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ h% F9 @4 y! H; ]* E9 u1 c$ |        at ActionGroupDemo.main(ActionGroupDemo.java:67)* i; |% I0 N. b7 a( f0 w+ Z
) a: C  R8 @, t4 Z* ?) {- t+ K

. Z  a6 d, B; Q! i  l7 nimport swarm.objectbase.SwarmImpl;
0 o6 Y( q- ^( Q& vimport swarm.objectbase.Swarm;
/ n% y- K: M: a- bimport swarm.activity.ScheduleImpl;
- f9 \: C+ K4 Eimport swarm.activity.Activity;
, B# z6 m! n& L& v( Mimport swarm.activity.ActionGroupImpl;7 a4 O8 M/ g0 s6 I
import swarm.collections.ListImpl;
! R' w. v# {% V# Kimport swarm.defobj.Zone;
0 P6 r( o* D4 {& ~! |5 ^5 d0 Jimport swarm.Globals;  m4 u( V' B7 U- l
import swarm.Selector;* E) }0 q- D7 v3 m. s) t  |
import swarm.activity.ActionGroup;
  Q- g7 V/ y7 d% R8 {class Agent {
6 \- e/ m6 N# w4 z        char id;2 N7 M/ n3 v" {+ E* `
! a. M# E4 ~1 m9 W8 |: v" R2 i! K& a
        Agent(char id) {9 f* a" S( a" ^' `/ d! K2 X
                this.id = id;
+ P7 t0 H! x8 }  m        }4 N. ~+ `* p1 Z2 _
: I; ?2 n# G" |; q: Y  K
        public void agentStep() {
. d. G; p' O$ p& @- D* h) ]3 k" z                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 f" G1 G& O, R: w        }' e2 ^1 D! N! t
}
0 V, f' u) H# N- a1 f0 D( ^8 k+ O1 d, F. v+ B
public class ActionGroupDemo extends SwarmImpl {" n7 o2 q/ z# y
        ScheduleImpl schedule;$ x: l& J2 {( ^1 ~$ I3 r
        ActionGroupImpl actionGroup;
* q  W' N% e" [2 p3 @        ListImpl list;
$ N5 P1 k; O3 E4 _& _6 G3 Z        char Id = 'a';% |, S4 i" [7 q; q+ d6 i% |9 w' w" ]! S
8 {9 I; s$ f6 R7 n# |" M& j! f
        ActionGroupDemo(Zone aZone) {: A/ p8 q( o$ J# n
                super(aZone);3 [2 N' T+ o  q0 `% {3 q! V
                list = new ListImpl(aZone);
4 L9 `2 X+ W) R                swarmSetp();
3 s) o0 ?) @% j1 F1 d3 h                actionGroup = new ActionGroupImpl(aZone);
; {, ^. D" N6 }: T" U/ ]" v% P                schedule = new ScheduleImpl(aZone);
1 X' N( J- x7 v3 P& b& Q; S                try {
+ W) [3 L0 s9 W. ^) }                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) B- K" D, D, _7 ~8 o  K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# k  T1 B& J3 @0 \9 S) d                        1 ]5 k5 V  t( X. ^% T
                        actionGroup.createActionForEach$message(list, agentSel);
# U1 x5 a, |' f: U                        actionGroup.createActionTo$message(this, swarmSel);
( \' a& c1 R' \; R" I- X8 T                        schedule.at$createAction(0, actionGroup);) h! E# g2 _1 G& h+ w, y
                        schedule.at$createAction(1, actionGroup);4 D7 F6 O8 Z% C4 U* F" |9 V
                        schedule.at$createAction(2, actionGroup);) O% {  @# w8 M! x3 c
4 d& K$ |. t" q7 z3 _
                } catch (Exception e) {
0 ?. i7 y: P8 Z3 D; R! q' [                        e.printStackTrace(System.err);' E9 P/ N) K6 _% b) X& s, m' ~. I
                        //System.out.println(e);/ a! m7 X; d2 u3 j+ N/ \  Q
                        System.exit(1);" K' w  j! U: \8 j5 f+ o
                }
* W2 w: S7 O. A! B* h
6 c9 J" X5 E# K, M+ f& _! z& ]4 z# F
: l0 s8 B2 K9 m& ?+ U        }
/ V# w0 Q0 C; F% K& B1 y$ e' D
/ g" X+ ~7 U' p; O2 ~        private void swarmSetp() {$ I& u# j  s+ F* D2 i/ C+ I
                list.addLast(new Agent(Id));
- c6 @" }% i! j. r% f                Id++;) D7 ?0 d- Q# k. G$ I9 a' h* q
        }0 A$ G5 @- ~1 Y& d- Z: U
1 M7 u8 d5 u% C. R2 s( B6 Y9 r; H
        public Activity activateIn(Swarm context) {
: V# j4 m4 U8 _! \) B& h                super.activateIn(context);3 {; z. M3 z' A8 h+ \1 Z$ e
                schedule.activateIn(this);
, Y+ H9 g1 v2 O% s) e8 N) c                return getActivity();
6 L- v* J2 }7 v, m7 f        }. `9 h' A0 k( k7 T8 H
) l' l6 f8 o$ X5 E* B( ^
        public static void main(String[] args) {
' {& ?" L: F* g% h: J# ~  ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  H! @  v1 h6 Y2 l0 S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, u+ T0 Y; }3 y/ d5 H/ w7 T                swarms.buildObjects();/ d: B  B3 H# ?5 g8 D
                swarms.buildActions();. s9 F4 D! C5 W8 T  N" v! z& L
                swarms.activateIn(null).run();
; x& H+ h$ T& b+ r% C1 g        }  V5 E/ n8 y! B0 ]0 P8 a; v* @

2 `+ W' O- m" E}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-15 14:41 , Processed in 0.015438 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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