设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5614|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # P+ {- z* B- C

9 b2 z/ n/ W9 D. D: M9 E+ w, K2 }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 w8 p# Y  x* D: A, Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  E; V6 a3 C- x3 X9 w3 w
swarm.SignatureNotFoundException8 k0 I* J% j8 u# x
        at swarm.Selector.<init>(Selector.java:76)2 p' k- J3 g/ ]7 Y, I
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# `3 N" M8 F$ B+ b. {& r
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* g8 c( L# A% l5 f8 Y1 ?) @2 R  d$ m

$ @2 @$ l- Y' X" B) Oimport swarm.objectbase.SwarmImpl;
- b2 `- A/ ~! [" \0 }import swarm.objectbase.Swarm;5 J0 ^3 m  ^8 h$ B& o: J0 @
import swarm.activity.ScheduleImpl;
2 r- n: [* k  N0 z% Ximport swarm.activity.Activity;
  M% u; C: r4 ^% H+ D: Eimport swarm.activity.ActionGroupImpl;
6 O1 @8 [1 c, B. ~import swarm.collections.ListImpl;, T) j1 P  p  A2 Q& f8 f  j
import swarm.defobj.Zone; % }. w1 c) m) p8 v5 g0 o! H0 B
import swarm.Globals;
, n* R+ }, F- l/ O. S6 [import swarm.Selector;$ S. v, i# h9 m; p
import swarm.activity.ActionGroup;
; \0 l& H3 F9 A+ W/ @class Agent {
: t2 B% G$ [! a+ h$ F% U0 g7 d' s        char id;
% F8 r  q9 @& t; ^/ P+ u' Z1 L2 @  \. x! x3 @0 d, E& H8 w
        Agent(char id) {
4 H" o* |5 j5 e; E, |! h. B                this.id = id;
. M7 U% [) G9 R  A        }
/ K, h& I, E! S; ?% ?8 Q" T. @
9 j! o  q; a, ?0 y        public void agentStep() {
9 c) h: ]: e' d& m( z, L8 }                System.out.println(id + ":" + Globals.env.getCurrentTime());* d9 c% F- H+ Y7 V+ R& R
        }# M5 V" E+ x; f$ l5 _' W' j" B
}4 m5 j" |2 d4 `
% K/ q% [. }0 C
public class ActionGroupDemo extends SwarmImpl {2 v5 O, r+ u/ m2 x1 L7 `  I/ z
        ScheduleImpl schedule;
0 ~* a( k& Z5 q4 }        ActionGroupImpl actionGroup;
( ]. y+ G7 y  R/ ]4 m        ListImpl list;! \# D( |5 U& }. X' b" A
        char Id = 'a';
7 i) t0 W9 m/ j2 {6 B* l9 f2 I1 D1 c* A# F6 D
        ActionGroupDemo(Zone aZone) {- i) j8 |7 D/ }8 @8 O- N
                super(aZone);/ w! T6 Y* f' D) {. l( B, b+ e) n2 x% A
                list = new ListImpl(aZone);
" p0 U/ L5 I9 n; D, {9 T6 M9 G                swarmSetp();
) B* Q! j9 X: F1 e3 T$ g                actionGroup = new ActionGroupImpl(aZone);4 J% `; O6 M: F
                schedule = new ScheduleImpl(aZone);& i& R1 \0 d* ~  w( K+ R" {
                try {' ?) r' w; s/ D4 X/ T, t1 ]1 Z! s
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 y/ Q' N- W/ f) D! s/ G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! E6 k- B; w, `4 v
                        
  Y! n9 W6 f3 N3 ~1 |) K                        actionGroup.createActionForEach$message(list, agentSel);
; h0 J- F8 S5 ~0 F  r8 o7 K# F                        actionGroup.createActionTo$message(this, swarmSel);
# L" y. P" a  T" c: i! }& o                        schedule.at$createAction(0, actionGroup);
$ y/ I$ ^& b# q$ d; j                        schedule.at$createAction(1, actionGroup);2 o- Y4 y9 O: t( S$ @0 n( O
                        schedule.at$createAction(2, actionGroup);
0 M6 c) G' C/ c/ N/ g7 \6 O# w' h& w3 o/ I5 C$ U
                } catch (Exception e) {
% C1 Y4 |% \1 s                        e.printStackTrace(System.err);
. g" Z+ @; n0 h1 V! [                        //System.out.println(e);
! [6 E2 c( O* j8 R2 L6 P/ K6 X# ~                        System.exit(1);
2 L3 l; X7 Q( l4 ~& U                }1 U- i2 w; A8 G! v( @7 F- a, J2 L

5 P- V; N# @1 e& D( z1 r9 K; b6 v1 E3 l0 }& y
        }4 w2 d7 w! b$ }& U

( W2 Z% I( R; j8 b        private void swarmSetp() {4 a8 {, z/ m! r. T; A! l8 q, X; d
                list.addLast(new Agent(Id));
+ G; ~" @9 M& c# T3 G                Id++;
5 N$ C9 Z8 \5 W0 |5 c) e1 q        }
4 o5 q( F  x% e) P1 A
# C- `$ s& L1 z0 N+ C        public Activity activateIn(Swarm context) {
- F2 D) n' v' q                super.activateIn(context);2 J  r! Z, F8 c
                schedule.activateIn(this);4 ~; W, c# d' E) _* Y* F8 a+ |/ G
                return getActivity();& _. U" K$ @# `' G! @- h- J
        }% z. H+ {& l9 J/ J
4 \8 [+ {; z  Q  s' x2 r
        public static void main(String[] args) {
* D3 h& F) q, _2 [# V3 E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 i" R, w3 }4 d& Q6 h: |8 v4 V. O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 J; b8 M3 m$ l) \; e
                swarms.buildObjects();$ |" i. A2 V) r) u
                swarms.buildActions();. q* l! l3 d7 e4 v
                swarms.activateIn(null).run();; }5 ~* b$ M; B
        }& U! J  @4 p2 U; Y: M9 ^' V

' C6 V( R7 e& o4 K  ]! s}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-15 13:22 , Processed in 0.019039 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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