设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11596|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  q& t/ ]3 f% e% H+ ?# b6 W
4 k- U9 x$ ~/ @; r- q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, W9 m  {' y* P7 G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" H, }# d3 C6 k( pswarm.SignatureNotFoundException
3 M6 }5 v; b7 [) }$ B8 O9 Y        at swarm.Selector.<init>(Selector.java:76)
# x, H9 X* n% j        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 K) S, K9 Z/ I. g! _! V: S; P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 I8 t( g- J1 }) q
/ j8 ?  ~' Q' b1 ?* N: O

* k( _% M- U% R- Zimport swarm.objectbase.SwarmImpl;& m3 ]9 y7 d0 A2 m( ]8 D" [
import swarm.objectbase.Swarm;: b& \0 _4 {2 m$ V8 n
import swarm.activity.ScheduleImpl;
+ n% K" B0 c& b4 Ximport swarm.activity.Activity;2 z. f4 @+ m9 E, z4 ^
import swarm.activity.ActionGroupImpl;
0 _  G( z- R! e6 f3 bimport swarm.collections.ListImpl;7 T( D* Y3 \( o3 V* S
import swarm.defobj.Zone;
% h4 I+ ~2 m% `# O' W# {% b5 Pimport swarm.Globals;5 b8 B2 B4 N6 ^; }7 v8 L
import swarm.Selector;) S) n% O$ E( H' D; ?4 s
import swarm.activity.ActionGroup; ) G6 K4 O; p0 ?+ d: w5 M9 o9 R
class Agent {! ?& B2 I) c6 C& x! E: c) K
        char id;
/ _% c( o7 f7 R
3 B  W, Y. y# _- a1 J        Agent(char id) {
1 N2 ?% W& U( f6 o3 r3 R                this.id = id;
8 W9 ^8 x8 w; r7 l" y4 f        }
4 ?- P4 a) }5 R, w7 f6 d1 e/ N7 Z0 i: E7 D3 S! H
        public void agentStep() {" M4 I9 K3 t- M8 M
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  ], U5 ]' E' g1 v% F# o        }
! p' X6 h( p( G# V& \0 \}
% {- t' @8 S1 w
9 H( V; e0 ?# _$ N$ ^public class ActionGroupDemo extends SwarmImpl {
# E; P" x( F% _$ [        ScheduleImpl schedule;
4 x4 f" G- }# \        ActionGroupImpl actionGroup;6 y* u" c' S: j5 h  X9 `
        ListImpl list;
) Q0 a; s5 {6 Z5 q9 n/ w        char Id = 'a';9 u) B5 }  M0 G1 L" Q; t& Y6 Z
0 ]( V( e  D4 i% U
        ActionGroupDemo(Zone aZone) {
* X2 y) i/ \6 E* O* l1 }" p' q; [8 x5 D                super(aZone);
- A$ t2 K$ A5 ?0 k6 t                list = new ListImpl(aZone);. @" D8 |" p% R2 a- S  H! @! U$ H
                swarmSetp();
6 A8 T1 @  C5 _9 ^" i5 T                actionGroup = new ActionGroupImpl(aZone);
% J( W- I: K5 i9 O- [3 ?                schedule = new ScheduleImpl(aZone);. Z! c( |- X. b2 c
                try {
. _% f2 p  G; h* z) B5 S7 n                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 U1 `( s6 _/ l' N) n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" Z2 A9 {; V$ ]$ t- ]
                        2 E9 @/ ~) m5 I
                        actionGroup.createActionForEach$message(list, agentSel);
+ e5 B, A0 s9 M# J4 ^# g+ E                        actionGroup.createActionTo$message(this, swarmSel);' y, _( A- k4 _
                        schedule.at$createAction(0, actionGroup);1 V( i0 b# Z4 o2 s
                        schedule.at$createAction(1, actionGroup);5 K) S- S8 {6 s# w& S
                        schedule.at$createAction(2, actionGroup);
  ^" y; p8 k8 T+ I2 [
; w) W4 I! U$ E+ Y                } catch (Exception e) {
! z8 [# G$ b0 p                        e.printStackTrace(System.err);4 m0 B% l& v" @1 R0 i0 C1 A5 k
                        //System.out.println(e);: t% |- q; N1 }7 a
                        System.exit(1);3 z, {6 r5 O5 D
                }2 X- I6 Q+ ~/ B1 H8 Z

+ F7 \6 ~) T6 g2 @3 o4 d( S+ D  f2 ]! g/ D! K7 @; Y9 @
        }/ C# w. r) e, t, k. ]3 \# a
/ `* _* s5 k' D5 |0 |$ l% {
        private void swarmSetp() {9 g6 w3 S6 C) C. R; x' {
                list.addLast(new Agent(Id));
' e# U# m3 q5 E% j5 z0 @                Id++;* u  t1 R9 J& N, I$ Q) @5 A. |% Y
        }
5 p; @3 {$ v% V& ^) y, a* ~+ |9 U+ K( b( ~$ f) P2 R/ I6 q
        public Activity activateIn(Swarm context) {' D- N* N4 `9 B& i' ^
                super.activateIn(context);
- I% E( @/ _7 o: i                schedule.activateIn(this);
' B9 S5 J, L/ V4 T+ o+ D9 s* R                return getActivity();
# Z* l1 z5 n, v  x/ u* K        }$ W0 c( @3 L# F9 u* |, q; E

& |" k7 b& C- R        public static void main(String[] args) {: k* E0 f  Y' [! e6 ^" Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' f/ g% G5 B1 t- U: [8 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! u& s2 n9 m$ v1 c: u
                swarms.buildObjects();
% l0 L" u+ i* d                swarms.buildActions();, H6 k; y! w0 g( a( O! Z0 |
                swarms.activateIn(null).run();8 v5 y' v  I1 X# D+ z% h" v1 Z- V# C" z
        }
5 x' \7 A/ x, G) G! c6 L  V% }6 b# q2 B6 \$ \
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-16 19:17 , Processed in 0.013764 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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