设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5440|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ C7 M  p3 c- P$ m* @) L/ N8 T. l# S
6 J3 o' ?' E  a3 U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' f% `0 M$ j' D5 u" F6 \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% _6 [6 C. K  N6 j% e
swarm.SignatureNotFoundException
" ?, ^! I8 q4 f        at swarm.Selector.<init>(Selector.java:76)
; R; M  i. D  Z5 a# D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 \( }& P* S3 K0 ]# J. y. L
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% }3 H  m9 l* @
7 x' M( ~( ]; E7 \$ [$ _1 J. I7 ~! [9 h8 {8 Q5 G1 L
import swarm.objectbase.SwarmImpl;, s6 V/ q3 D! }1 p' l6 O
import swarm.objectbase.Swarm;
5 f4 t- _7 j+ b4 f3 U. z! a/ j# Aimport swarm.activity.ScheduleImpl;
' Y0 a- Q. ^( J. y- N5 rimport swarm.activity.Activity;
% |+ z/ x! t0 T* G# J+ ]. Limport swarm.activity.ActionGroupImpl;
: \1 F3 T# w& i8 iimport swarm.collections.ListImpl;/ G& _$ L) m' `  e
import swarm.defobj.Zone; 0 o6 G0 l) L, w! b0 D+ m+ C
import swarm.Globals;* B5 Z# n, n! J' e( S9 Q3 ?
import swarm.Selector;6 t) z$ I; `5 J
import swarm.activity.ActionGroup;
; U1 j; q* d  l- O/ e4 Kclass Agent {5 v1 O! M. A0 n( Y: C7 C2 j
        char id;4 o  |) J) o# C8 [! I
% B8 f( \$ @9 e( b
        Agent(char id) {
! b# ?, f% K- X, b# c                this.id = id;
5 Y) e% ~  l: I/ u* i) N! e        }9 {; H0 `, s+ o3 i3 k
3 C- j2 d( [' J- H9 M* m
        public void agentStep() {& A9 H4 \# q& ]; k4 X$ \
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" ~! _( W4 w/ Q" b' w$ t        }8 k' c2 D- n" z3 r, S
}5 n. w. u4 `* W! Y; k6 E2 |

1 ~3 S( c9 I+ b: @- N* E# y! mpublic class ActionGroupDemo extends SwarmImpl {
  P* w9 [8 c# _9 X5 d- c2 Y        ScheduleImpl schedule;7 e7 g9 G, T, O* D. x
        ActionGroupImpl actionGroup;9 v: A; j0 X8 W& B/ i
        ListImpl list;
3 a  q) [* x8 u4 S9 o5 R4 f0 E        char Id = 'a';
! W' ~' k- }. B" W. V4 k; @
9 B, K9 r5 N+ F) O        ActionGroupDemo(Zone aZone) {* e7 q6 M# Z, R  c6 m
                super(aZone);
% v+ r: U" a+ V1 F                list = new ListImpl(aZone);, m* ~, c7 ]: B9 S
                swarmSetp();4 ?  h& p! A6 \0 Q$ O2 O
                actionGroup = new ActionGroupImpl(aZone);! l+ i6 a) ]; I4 q: L
                schedule = new ScheduleImpl(aZone);
+ j* ~2 m/ s  o1 F$ b4 R                try {
7 y: \! x  O  T3 h; d0 d3 I2 H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' r  u% K" _1 Q8 y% @5 S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; F' v/ L$ s4 h5 H% A# e
                        
( N" L5 `  M1 V% ?7 Z( D                        actionGroup.createActionForEach$message(list, agentSel);
4 y3 M2 W( R  h( G                        actionGroup.createActionTo$message(this, swarmSel);
, \+ O# H* `) u- j4 |" t                        schedule.at$createAction(0, actionGroup);
. ~/ d. {' m8 [/ n( A+ F, U                        schedule.at$createAction(1, actionGroup);/ V+ o  l! i7 ]" e
                        schedule.at$createAction(2, actionGroup);
: W& |7 R, y% Z. w$ G3 L- V5 B, X3 ]' J5 n% Q- I
                } catch (Exception e) {) C1 E* W1 b) V8 S& L$ E2 ?
                        e.printStackTrace(System.err);* A2 c- D% g& F
                        //System.out.println(e);5 a5 \2 Y9 B9 S3 C6 F8 N9 l; [9 J
                        System.exit(1);: I/ [1 g7 G# ]* _( e( |7 k
                }5 ^3 H% f4 m# ^# r

5 q2 Y$ `/ Q2 k1 f
5 d8 ^; z1 J# M) R1 h, z, ~$ D        }, r' r8 w: n) |5 J9 W% T7 j3 H
* s$ o9 c6 S4 Z- Y' W3 d: j0 ?
        private void swarmSetp() {
9 O1 t! ]3 t$ f6 l9 @                list.addLast(new Agent(Id));% b1 M  u) k4 z7 S- L
                Id++;
; m3 x4 J- o2 ^5 r/ _- a$ Q        }9 R2 J! M& T) d& p. h; F3 P
  G# C4 a2 `% r6 c- }' P0 T
        public Activity activateIn(Swarm context) {: E" }/ r* f8 K1 d( h  x8 V& R
                super.activateIn(context);
+ s5 @( [- s' T( e* B2 a                schedule.activateIn(this);2 n" s8 j$ i. @7 Y! f; h2 i
                return getActivity();
+ H3 V: v5 t) t# c+ {* r! q        }
  `: U* l" `( I' y4 W6 _  e! [" X6 M( s- v. v# F
        public static void main(String[] args) {: ?5 s2 J9 L) X( M& U* }
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; c  b1 T8 M* y  M9 [                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: S; l: @, n/ t
                swarms.buildObjects();6 ]# S3 p+ u' [( e" U! b  s
                swarms.buildActions();1 h' s- u8 U4 {) M! M
                swarms.activateIn(null).run();
# N3 j7 ?" I  q( y! M. ?        }7 q0 S; ^0 V) l; _  h5 ^" Z7 n* o

' S% b) [, T7 p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-9 05:11 , Processed in 0.018771 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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