设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9943|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % `7 A" G7 z5 S  K

, ?1 I5 S. ?/ n2 ~9 K" `5 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 F; Z4 k" d& H6 O/ p* w' x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 w8 x* _! I% V1 y+ |4 h
swarm.SignatureNotFoundException4 N% Z; ]) M" L
        at swarm.Selector.<init>(Selector.java:76)3 r  Q* ]% o; x3 C# Z/ a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! u. c- I0 z$ s* u3 R
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 k4 G8 C( ~# t6 j

) n2 ]  V  g' O
! V: S- E0 G7 j7 |" _3 bimport swarm.objectbase.SwarmImpl;
2 _4 w( i6 o( b' n4 v7 Limport swarm.objectbase.Swarm;
; l6 ]  H- N% x; s# A2 S  Eimport swarm.activity.ScheduleImpl;
- k) K! ^/ K) u. fimport swarm.activity.Activity;
  r3 c2 L9 Y& j& y0 `/ Wimport swarm.activity.ActionGroupImpl;( S0 j7 _$ q: {. K2 `3 F
import swarm.collections.ListImpl;4 o- h. g! Q2 b! c5 D/ b- {, C
import swarm.defobj.Zone; 7 D, o% \) R" q
import swarm.Globals;
2 g. j' t2 o% eimport swarm.Selector;
7 H8 M$ O; c6 b# qimport swarm.activity.ActionGroup;
- A/ L' Y  _3 x8 D+ uclass Agent {5 }8 |7 [4 u2 [
        char id;
" U% \& ~0 g( ]: ]" C; ]- q# t
        Agent(char id) {9 v4 C$ B& H% w5 |+ l
                this.id = id;5 v- p! |0 r2 Q/ x9 _' V8 q
        }: C2 g2 I9 q, j$ Y4 `2 w

+ i% }  w# p) J8 c        public void agentStep() {7 G0 L# N* a. s/ T9 U' o
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: t% ?! V$ X5 `        }
( ^3 F  \6 D+ R. x3 q8 }9 T+ }}- S6 Z  `, Y( l" g& t

9 a0 y9 f9 ]3 k' e$ M* ]% xpublic class ActionGroupDemo extends SwarmImpl {
4 j' s( ]( X4 R        ScheduleImpl schedule;# l- j  K8 n4 d  O) T) P
        ActionGroupImpl actionGroup;
% O8 U+ T) G" l. V        ListImpl list;" B5 g* N: \7 D- X
        char Id = 'a';3 H% O6 g& h+ O) Y# o9 |
. D) e! F( V1 I+ t
        ActionGroupDemo(Zone aZone) {
; S( S. O6 S" R0 P, U, n/ w$ F                super(aZone);
# T1 s# f4 L+ c' ~3 r' r$ E% [                list = new ListImpl(aZone);, J' H% u$ |  U0 t
                swarmSetp();
0 F1 Z! L; {- Z8 y' h                actionGroup = new ActionGroupImpl(aZone);
& f' ?+ ]" c; X! b; _$ n8 j                schedule = new ScheduleImpl(aZone);
$ Q6 G' d' L* o2 Z8 `% ^. v5 K; A                try {, _6 f3 H1 g3 K. s( U3 h
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 b! A/ u9 Q& X. T& c6 b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! p$ _* e: Z1 V7 Q! {2 B  J9 E
                        ( m) m6 G/ `( X" r# a
                        actionGroup.createActionForEach$message(list, agentSel);8 z! e5 n5 Z' F# C/ r% v
                        actionGroup.createActionTo$message(this, swarmSel);% s2 E  v* y! I/ }) \
                        schedule.at$createAction(0, actionGroup);
' ^5 }; t! p% Q9 o                        schedule.at$createAction(1, actionGroup);
7 B3 d( s. S# i0 F/ b+ r                        schedule.at$createAction(2, actionGroup);4 \0 h# u$ s' e7 F0 T/ g2 T4 C, z' _
1 ?* v% S7 x! X! z. ?/ w
                } catch (Exception e) {
9 D. b6 |! I# E6 Y2 ^" m                        e.printStackTrace(System.err);: Z* Y" T3 m5 p0 E5 Y: U' T* I
                        //System.out.println(e);
% }  U) P2 W0 D" p1 O                        System.exit(1);
! I( d9 v5 f' E4 {* H' ~% k9 l6 {7 t                }
+ V- @) M, H7 g9 s$ n0 P- I; _7 k& A4 q( o+ T$ R/ k

: p+ o. W& h9 w4 F. Q        }
; n  Z- c. ]- R! w# A" T5 a& F& r/ ?. x/ `& O: a
        private void swarmSetp() {' b3 {, Z8 b+ r4 c* _+ E% L4 b
                list.addLast(new Agent(Id));& D! V; b6 f2 I
                Id++;
: s4 N* [, d/ ?. M5 ^; e        }
9 {, S9 s# y4 j; i  w0 i
! }/ I/ R( {& X+ w, u        public Activity activateIn(Swarm context) {! _; Z5 l' H! n
                super.activateIn(context);
% {8 M" ^$ [. O) w                schedule.activateIn(this);3 o+ _5 T9 e* r* _
                return getActivity();1 T' v4 U0 w5 e* l4 B2 [, x( f
        }& z- d  a, q" b2 B" P" s

: O; W8 M" u; [        public static void main(String[] args) {
4 G$ x% W) r0 ?# R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 v& u4 n+ v1 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 ]2 x1 A& |; l5 x5 D$ w! p( c
                swarms.buildObjects();5 d0 \0 w: _0 u" m% I' M% J& X
                swarms.buildActions();% o2 y7 D: Z$ t; L
                swarms.activateIn(null).run();
$ E8 d& h3 `5 a8 g$ C9 ^        }
1 q; k  h) b7 v. r
7 t- I! A. e, ^0 d3 ?6 K; D+ {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-28 15:50 , Processed in 0.020677 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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