设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9885|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; z. A1 O4 V3 w
3 X' e+ Z$ \; o: H6 C4 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 \6 {1 ]& A7 e3 K+ A" p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' I5 Q& V6 h/ y1 G$ ~7 |
swarm.SignatureNotFoundException. W( I. |' B. w  m1 [3 u1 Y
        at swarm.Selector.<init>(Selector.java:76)1 K# p5 {/ j: s2 D
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), E! ~7 o1 B- I6 s3 E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' n( ^' [! u. d7 q5 G. y! x0 m
4 O0 o5 M1 m1 C/ T# [. l; k4 Y# ?

, k( H/ o4 Q  O. d" T: }import swarm.objectbase.SwarmImpl;  H! M* `4 g/ O* h  H" x- ]
import swarm.objectbase.Swarm;  v+ `* |) s& T
import swarm.activity.ScheduleImpl;, S3 o3 g2 D! m0 Z7 u( I
import swarm.activity.Activity;
. q( W4 b8 Z! R" simport swarm.activity.ActionGroupImpl;/ s, i" }7 i% ]" d2 _) q+ Z& Y
import swarm.collections.ListImpl;. o3 D; A8 |6 U
import swarm.defobj.Zone;
( F0 i0 M5 H( c3 Timport swarm.Globals;9 r% d1 s9 I9 P3 C- W+ E3 n
import swarm.Selector;
3 ~6 b% t7 v( simport swarm.activity.ActionGroup; % n6 S1 o7 k6 n0 e# Z' o
class Agent {
# y' Y! f6 G- G4 D# ]. R        char id;6 i. C+ Z8 Y2 Q* _! V

- V4 L1 C2 s6 P; e5 C        Agent(char id) {
+ u0 H& E0 {' M2 |4 v' k                this.id = id;9 R2 C& G% c: z  _, l) W8 Q
        }; O) |5 T* M( o% `
3 m' L2 k- `+ [1 P8 p
        public void agentStep() {
$ ~9 F" m1 D  m7 q                System.out.println(id + ":" + Globals.env.getCurrentTime());
, X$ D5 n& A' @- k- y$ ~        }3 k" W# w2 k( k
}* B3 B* b8 a7 z
, ?+ a" j- {! _/ a
public class ActionGroupDemo extends SwarmImpl {. Y% A6 o% [  v% k# V1 b
        ScheduleImpl schedule;# S/ y( g  z8 f* y
        ActionGroupImpl actionGroup;8 R& ~$ z* l/ A' [, X
        ListImpl list;2 A# X! h5 E: B: l  C1 w
        char Id = 'a';
9 j! C5 |: g" v$ q' a. t
: E5 F: F- `4 M8 e/ d% V        ActionGroupDemo(Zone aZone) {; o2 L, M2 u5 N0 Z4 a. s
                super(aZone);
  J8 Q1 ], X+ h                list = new ListImpl(aZone);
, l/ T- N6 ^: _! ]; E- @                swarmSetp();
. D$ o3 ~+ S. v" V                actionGroup = new ActionGroupImpl(aZone);- o; f5 |- j/ I0 h' z6 S
                schedule = new ScheduleImpl(aZone);. S" L: y" T% B, E/ y8 U
                try {( t% m6 s& I2 [& h# Y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  M0 s1 h. J+ ^. x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' H9 S) E% z# J8 `4 a8 ~$ [                        
' D+ t& J0 P* y7 v4 [/ i                        actionGroup.createActionForEach$message(list, agentSel);
/ `; }6 c7 `& n                        actionGroup.createActionTo$message(this, swarmSel);! Z4 ~& W% Q' H2 I5 e
                        schedule.at$createAction(0, actionGroup);
1 g  Z& s$ t& R0 o6 L8 {: g                        schedule.at$createAction(1, actionGroup);6 d5 i  u; I) O2 A, ]3 n
                        schedule.at$createAction(2, actionGroup);
2 u& k, v0 k3 h$ q9 n, w- \0 F7 Y& d
                } catch (Exception e) {% {- o- z5 m  S
                        e.printStackTrace(System.err);3 N0 |) h$ y" i9 ?* J) W
                        //System.out.println(e);
3 w+ [% T6 \" H4 [* F                        System.exit(1);% W+ M% @( Y( a7 F( L0 z" i% P
                }
. A! K+ n& c* L  b; o0 v! z2 l9 s: S* m# f" ^& s  ?1 W  Y/ o
5 y+ g2 m; B9 C6 B8 o2 M" }) }
        }6 x5 h, l$ q5 R& q( o
/ w7 @' B9 R  s
        private void swarmSetp() {0 q( ~& m% e# A+ I* r" T/ Z
                list.addLast(new Agent(Id));
+ ~! L: _# U5 W. C                Id++;
7 U' w2 k& p; E6 \        }9 n1 f7 [8 [+ b8 w# ?& P# h( N

% B/ H6 _; G5 E/ \! G        public Activity activateIn(Swarm context) {
2 o  R) E! I' A- k# q                super.activateIn(context);! r) k9 k  v; ]/ A( {* ?8 P# R
                schedule.activateIn(this);
* e8 w/ l6 i5 G* U                return getActivity();( G! n! }, R5 V2 f, u& U" V
        }9 S6 L6 r. i. ]! r( t
8 m  r4 Y+ l! c8 Q
        public static void main(String[] args) {  q  L% \' z/ y
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. X' f$ Q. F$ A% a7 f) ^& `7 _! s
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# u# {& h/ E+ Q' Y- I                swarms.buildObjects();
: b  x0 H; B( X  ?5 e5 O3 d                swarms.buildActions();
/ x, v; w; B. t                swarms.activateIn(null).run();2 |5 q: O3 L/ [$ R
        }
) w* a7 s, v5 Z4 _3 W( I  M: Y9 ~0 y- s, N! E0 i
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-26 12:16 , Processed in 0.019673 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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