设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11941|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 W5 U! j: [5 ]% F# r3 Q* Y" r0 r9 R3 M: o& ]) U' Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 i6 g' O' D$ D& t0 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; S; U+ |" Q6 C# c7 D' L
swarm.SignatureNotFoundException: X! g4 ~" g6 ^$ v" [' \- G6 @
        at swarm.Selector.<init>(Selector.java:76)- o: O) D" M% M  B# b: z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), I. S4 w' H5 Z/ H- `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ @! ]+ Z; m* c: t  S# }1 b

+ U' V& L1 N4 ^) o3 |0 ^, K1 I" N' s3 r& r
import swarm.objectbase.SwarmImpl;  r) ?0 a) h$ ~( P* j2 q9 `
import swarm.objectbase.Swarm;
8 z: M" q3 b3 J6 Y" U9 kimport swarm.activity.ScheduleImpl;
% m; p7 ]# ~5 V- w* K' @import swarm.activity.Activity;6 Z6 j  j9 Z+ [3 u4 R
import swarm.activity.ActionGroupImpl;
% E% j5 u+ o0 Oimport swarm.collections.ListImpl;8 B! D7 X0 t  K8 f$ I. c' S/ h
import swarm.defobj.Zone; - B* i5 l! U$ Y9 {1 w: E
import swarm.Globals;
+ |+ b2 i/ Z# k$ K) B# Eimport swarm.Selector;
2 F, b' N$ T' `+ {' yimport swarm.activity.ActionGroup; & c. l* P$ D! U3 S7 L. C6 A
class Agent {
/ l  w9 g; c5 x, r3 _; z        char id;4 {# j: V+ `( ^# k

4 M! ?9 O5 P# _4 V        Agent(char id) {6 ^) q8 l1 E4 {0 N$ B0 }
                this.id = id;
& `4 r1 o2 x. z8 t9 H0 e/ I' |        }* [  T5 a+ e2 r. e' P
  D" g  V* w+ i, t' p
        public void agentStep() {' `4 y% [# ]; r% G; O+ y6 Y
                System.out.println(id + ":" + Globals.env.getCurrentTime());! o5 a3 O. w0 I* t
        }+ M, ^4 _6 r7 ~% P& [
}
% [7 G/ A3 K& ?* v% u+ r
8 W; k* G. d3 a9 r+ S1 P4 |  x& Qpublic class ActionGroupDemo extends SwarmImpl {  e) g8 R( \" ^) [# U7 R
        ScheduleImpl schedule;
7 n' k  q( _" x# A9 b5 v6 A        ActionGroupImpl actionGroup;
7 C7 c( E7 ?! i8 _# w& E        ListImpl list;( N5 p) D* w3 J( b* n, {
        char Id = 'a';. a9 h  v4 l) p3 c! H
  d: [6 e1 w) ]
        ActionGroupDemo(Zone aZone) {
8 V" l! r( o% ]                super(aZone);# w1 Y: {1 `1 R  K% V
                list = new ListImpl(aZone);8 m7 ~0 g/ k  w" Z0 d
                swarmSetp();  M! U0 {/ C" q7 t  j
                actionGroup = new ActionGroupImpl(aZone);0 U# e8 L6 P1 G$ v, S4 h  \
                schedule = new ScheduleImpl(aZone);  q+ v1 b  [( T" T5 A, q
                try {9 N$ J. }; m9 U4 j+ k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 L  S  X! n* N" l
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 z% n9 Y$ m0 z3 \! K9 E; N2 N5 Y                        ; C( x0 W  [: i6 j
                        actionGroup.createActionForEach$message(list, agentSel);+ A- }7 w0 i( a$ ^3 b3 K& Z3 _
                        actionGroup.createActionTo$message(this, swarmSel);
3 [$ l' R, z5 A- d# q1 m3 M8 ~                        schedule.at$createAction(0, actionGroup);
7 r+ U1 ]1 a# M' o+ ^- H( I% k                        schedule.at$createAction(1, actionGroup);* y4 m! I0 C! ]
                        schedule.at$createAction(2, actionGroup);& @( r; n/ w* a0 s
6 \  Q5 t& s$ X/ A" T8 ]
                } catch (Exception e) {. Z1 a" e3 H: h! H& y! }
                        e.printStackTrace(System.err);0 k+ c8 n9 J3 Q' r9 h, Z( {
                        //System.out.println(e);
* m( j) M: D  R6 w8 U/ o/ {                        System.exit(1);
; i+ {6 @6 N5 W  Q: c9 k* [' ~                }
! x# k# F2 G% ?  ^2 r+ ^) Q8 w+ i( G% x0 J% F# {
$ H1 R4 O( ^" {- U+ V; f
        }
# G, @6 r. J& w. X7 x' w
7 a7 A* i7 q0 m* _        private void swarmSetp() {  r3 d) B) f/ F: }3 i" ?% M& Z+ d, _
                list.addLast(new Agent(Id));
2 \- K$ R/ Y1 B                Id++;/ b% E) O# P; I: {/ q, D& l. S
        }' d: X" x9 k$ P6 \

* ]: U9 x. {7 T; q6 i; \        public Activity activateIn(Swarm context) {
+ F3 c/ ]" V$ `3 b0 m                super.activateIn(context);6 _0 y" A8 C- u" P1 e1 Q- z' B
                schedule.activateIn(this);0 z9 A2 J/ ?1 V2 u8 D/ D
                return getActivity();& M9 @4 y6 ?: z! o6 s. c6 q$ b
        }
2 U4 p. L3 e" c1 t# {
4 X* E% s( B9 |8 W, q        public static void main(String[] args) {9 L& u1 h5 Z7 k: R0 b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 i" v9 O* I; t& c
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 y1 Q; @( z8 Y. n$ e4 O8 s% u9 d
                swarms.buildObjects();
% F& D! W; ?3 |3 y# s* y/ t6 L                swarms.buildActions();0 Z) Q) t/ O6 M: X  v8 U
                swarms.activateIn(null).run();: |2 p* s0 z; n- p
        }
9 a% w  H' ]" w% w! t# R+ x  D" ]/ E) m9 C! _& r/ ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-26 06:16 , Processed in 0.016304 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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