设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12489|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 U$ q& m# }) [. p! h  K3 x& O7 K
* M- {& K* p) b9 x5 r% G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* t/ ]; N5 |2 T/ R) R+ G8 p. l, W% L
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* w9 V% L9 j1 p& H$ t
swarm.SignatureNotFoundException4 i4 k% Q: t: B* X
        at swarm.Selector.<init>(Selector.java:76)
. `% \8 N: W7 B% X' L% E) ~  u8 W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" B0 W- W7 g5 M2 p( G7 ~7 s+ W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 x8 T. g1 B% y+ P7 O

8 O  D& p9 P8 l8 {
) P  w  b3 r5 g5 vimport swarm.objectbase.SwarmImpl;
5 q' m4 @& f; dimport swarm.objectbase.Swarm;$ V" I4 \" h1 L; w
import swarm.activity.ScheduleImpl;
! J  H8 j7 \* y( s" T5 R. cimport swarm.activity.Activity;
+ g# o, B8 m$ j& Z, pimport swarm.activity.ActionGroupImpl;' o5 _$ G$ R# w1 N* {
import swarm.collections.ListImpl;
: M6 o3 \! U& j5 k2 g/ bimport swarm.defobj.Zone; ' A4 Q' z: h* X; Q& k6 a/ y
import swarm.Globals;
* T; f/ n. e' z1 U2 b. Limport swarm.Selector;
2 v, Q- i8 s- W" {import swarm.activity.ActionGroup; ! B5 a$ o( M1 F
class Agent {& E& ~  J( I* H3 w
        char id;. [  X3 R1 F- v) I& o3 \

% n/ [% g( n3 Q" J        Agent(char id) {
1 M- T3 y6 h, X                this.id = id;8 F1 @/ P* W6 b5 ]. m" H# F
        }
. V- f9 J3 H/ `$ ?
1 M" X- p7 u( G# o% c& a. E        public void agentStep() {
( e/ s6 _6 o% m2 |) M                System.out.println(id + ":" + Globals.env.getCurrentTime());+ N& X& p- L, \
        }
; p- ]. ?6 I$ x8 P! n}8 j$ W' Y4 ]7 e

9 V$ F& B2 ]& |3 K2 j# Upublic class ActionGroupDemo extends SwarmImpl {5 y/ e4 L3 e7 |1 |
        ScheduleImpl schedule;: E: H, F* s2 y2 ^
        ActionGroupImpl actionGroup;
( h1 J, {# d+ c" s  K        ListImpl list;
4 C: u6 {. e/ p, H        char Id = 'a';
8 A' C& e. ~. |6 }" u/ o1 b# D2 Y6 |0 K, F0 X0 l
        ActionGroupDemo(Zone aZone) {# e! T+ e3 j  D
                super(aZone);( f* W' ?- j5 g- e; d9 G
                list = new ListImpl(aZone);
  I& L# c+ v1 V+ r- [4 q                swarmSetp();/ p4 x& T- Q. R8 Z4 A
                actionGroup = new ActionGroupImpl(aZone);
  D; ]' W# \& ~1 y: i6 F2 j( ^, F                schedule = new ScheduleImpl(aZone);
' _8 H, s7 q" e. H  j                try {
& p: j  h" |. F  @  \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! k) a9 C! h4 a/ r' t                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: ^* u$ [+ ]& _' l! F9 j
                        
5 m4 h  L9 r6 S0 ^( t/ m# h$ F1 x                        actionGroup.createActionForEach$message(list, agentSel);
1 o- L' E' h7 ^8 K4 }/ n$ i& Z                        actionGroup.createActionTo$message(this, swarmSel);
  X: ?" m. T* T  e                        schedule.at$createAction(0, actionGroup);
6 [# [& N* d  D                        schedule.at$createAction(1, actionGroup);
+ |) A. _, ^/ @( ^, O8 X                        schedule.at$createAction(2, actionGroup);* t% S% r( ?# h: z) h+ E: D
+ M! V0 J5 T% d
                } catch (Exception e) {
! g5 I( b& z7 n1 I: u. z( Q                        e.printStackTrace(System.err);
% R  v% [, m# I! q& M9 }/ g8 E- I6 j                        //System.out.println(e);
, i; Q! k7 `- H                        System.exit(1);
* O3 h% ?0 R" W) d5 T1 \8 P                }0 K) X1 N! j# E
3 d. k+ |( j& ^3 A( J9 w5 D
; U6 |7 v+ x" m
        }5 w5 O- z8 N0 z, h) q1 F  f' P
0 m! G3 b0 G, {  I& \" [3 k% s
        private void swarmSetp() {
0 M8 U5 A5 K& H                list.addLast(new Agent(Id));7 }2 u% \0 t5 E- k; h* I, W
                Id++;
/ B" A% I; M: z7 v        }
7 ~; D" y' F# ^7 F& ~  W  s" L+ }& s6 x8 o& X0 X
        public Activity activateIn(Swarm context) {# h1 a# W! ]$ W
                super.activateIn(context);  @6 ^) B! ^/ {9 W
                schedule.activateIn(this);) H3 N) J6 G# m. U7 Y( O) ?4 G
                return getActivity();) a; g( q. I$ v9 G
        }. d" F$ n( A. f& K- L

& a' K+ L  {! d2 M% D        public static void main(String[] args) {1 G! H/ }% F8 S% v& Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ ^% g/ |4 s7 q5 ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; Q/ r6 W( \5 A; X; o! k$ P
                swarms.buildObjects();
; x; ?; c& w. X* e% [                swarms.buildActions();
$ S' b8 Y6 a. x7 ^6 l' b4 ~                swarms.activateIn(null).run();$ g- {% R: @9 i. r
        }
6 @9 E$ s% H( z& [+ ~* b
3 o2 s+ L0 o1 B+ W) V4 }/ h1 M}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-10 04:39 , Processed in 0.015610 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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