设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9564|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 f$ x0 r7 z( h' N( v7 \8 R/ ?; f' I, m, N, W3 s# d9 x$ X- q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 T6 I& i& K$ k7 ]8 v) G4 J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# k% Y6 C. y$ s1 D7 {7 |swarm.SignatureNotFoundException: r: n1 ]- N+ N, V, M4 T* ^( B# x, r4 L
        at swarm.Selector.<init>(Selector.java:76)3 p0 K- H: W3 X% A
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 O; ?& E5 Z5 z8 k$ Y; y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)) ^1 I& X7 Z( N9 ^# A' O4 f- O' V
( ^2 Z* u! L  s5 i" D

7 {! m( g2 Y7 d. M5 s8 y0 Qimport swarm.objectbase.SwarmImpl;
& A+ @- T# L9 y  o2 i" P6 O. E+ Pimport swarm.objectbase.Swarm;
% f  g& m* K. p" iimport swarm.activity.ScheduleImpl;
  N$ V* X$ N4 |- Pimport swarm.activity.Activity;
) b6 q0 I) D. D/ @6 jimport swarm.activity.ActionGroupImpl;
% r7 t5 o5 w5 h! Eimport swarm.collections.ListImpl;0 {& ]; M" o$ i* r( m
import swarm.defobj.Zone; ! d* d5 v' n; Y; e0 U! w! _
import swarm.Globals;# d# k1 ]6 x$ b5 |' ?) b2 {9 e
import swarm.Selector;
: O. p3 J0 g! C7 M9 ?import swarm.activity.ActionGroup; / P/ q- W" Z- J4 \' z
class Agent {( k( [8 |+ @' m/ @7 M) I5 }+ E
        char id;
9 v7 _) S( c2 c4 b8 p& ]; C( {1 m$ s* V$ H* _" }, Q
        Agent(char id) {
( a/ @( P/ X0 N5 S/ b* ~                this.id = id;' _7 ~- ]/ U1 E
        }
; Z% ~9 V9 H; w8 u7 f+ S: Z/ [! W
. j! _) O1 f) ~: C        public void agentStep() {6 v3 c1 W- l- E4 E! ^" ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 P# g& C+ O3 l3 p: R5 R! H        }8 z. V' k5 K# [" W6 T+ g. u
}1 D% z; B9 e: X+ t4 e$ u4 N

6 Y' P# y4 ?% c, s% D8 g1 D# C( @public class ActionGroupDemo extends SwarmImpl {
4 C- m) C( [! ^2 `9 h        ScheduleImpl schedule;
* R  l$ K9 s/ ]3 X0 v* @: d        ActionGroupImpl actionGroup;
4 Q, c+ E% t6 F) |* i3 H; _        ListImpl list;6 R2 c- N7 V- k  P0 }8 B# e& ^
        char Id = 'a';$ @( Q' j" B: H3 x3 N: W' i% G( D
% p; r3 J+ ]- m6 E/ ~, ~
        ActionGroupDemo(Zone aZone) {  [& W7 J+ r9 H  _* W8 V- j2 Y
                super(aZone);
( R7 e- q$ n# M" O( ?7 E6 I                list = new ListImpl(aZone);6 ]/ m3 z+ d/ s0 t; |3 f( z9 ~
                swarmSetp();
7 s+ X0 H4 P8 G% r                actionGroup = new ActionGroupImpl(aZone);
% m9 j$ H: `$ `) U                schedule = new ScheduleImpl(aZone);" O: g# _' h/ \
                try {
& q" Q0 c" m4 ?* g2 }  A7 ?                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 D1 p6 b- {8 d8 I% D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" ]5 h6 C/ U0 E1 x& ]+ E7 }) i
                        
# N- d' {3 m8 Q# _+ t                        actionGroup.createActionForEach$message(list, agentSel);$ u2 u) p- @8 b, n+ V1 t
                        actionGroup.createActionTo$message(this, swarmSel);
+ s3 d1 b$ M" h' _                        schedule.at$createAction(0, actionGroup);
2 j5 L3 V+ c5 A9 v5 c# p                        schedule.at$createAction(1, actionGroup);
. K2 ]6 ?3 H2 c# U5 b! M6 `  g                        schedule.at$createAction(2, actionGroup);
) j0 U+ _( ^4 L, n- @! b. q- R; h# F* |) ?5 R
                } catch (Exception e) {
% B% r4 F- M% M' S4 F& D. i. F, n7 @                        e.printStackTrace(System.err);
8 E1 y0 `, [' k) j3 ]4 k% q% m                        //System.out.println(e);) u5 O. `7 `0 n& s
                        System.exit(1);! ?0 m9 X5 o3 `1 G1 x9 e& S4 V7 e* Q
                }
9 f7 r1 `9 x* u. ]- S  `6 f! X! X2 I$ ]3 F& h( X& Q" B
0 H: ?* p! h: K4 ^8 i
        }9 @2 }; a+ B0 F

. w. m! B; V9 F5 R' J) @        private void swarmSetp() {- s+ x5 e9 k3 Z6 U/ A) J
                list.addLast(new Agent(Id));
, h! i2 L% Z" _- l$ z  N% L/ X                Id++;. x9 C- ~6 M: _2 W
        }
1 W! l7 T, f2 Z1 U0 g7 _5 a) {  R7 f$ u$ P/ u& R  A5 \
        public Activity activateIn(Swarm context) {
. b8 x$ x9 \$ V! c, ?0 f; E! L/ G                super.activateIn(context);
/ I1 O( ^) D4 J2 H( W+ G                schedule.activateIn(this);/ [, D" @1 F$ T; h
                return getActivity();) K$ l% P8 G8 i
        }6 a# ^9 A' |& b/ r! _
' n) p' W6 d' ^, C$ r" D3 I
        public static void main(String[] args) {7 j5 _( T8 X5 m3 p2 r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; Q, W8 G6 y' [( y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 v' F  S7 I' r# f& M
                swarms.buildObjects();
9 V. D4 @4 z! A# d2 j                swarms.buildActions();5 j1 y# r1 L# A0 s
                swarms.activateIn(null).run();, |9 b% I2 q7 V4 @
        }
2 }+ V& i; s, Q. t6 n3 Q: [/ @9 v) \0 l# S  a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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