设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10493|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 j# E% ]0 ^+ F% ~0 s) |# ^4 y

1 i5 A( R* J% D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; T" k, V& i% u3 K7 ~; W, a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 }/ F( ?% N8 q) A& _! vswarm.SignatureNotFoundException4 q# {; r8 V$ E- Z) B7 Q
        at swarm.Selector.<init>(Selector.java:76)
. |% U: l7 z6 C8 G: |4 o8 `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 _/ m1 L! u# J        at ActionGroupDemo.main(ActionGroupDemo.java:67)( j/ A* z) t, p% F
2 s1 f  k1 \) M* F/ x/ |3 h4 Y

* {# N9 {0 z  x% i0 Z/ z$ ^( ~7 pimport swarm.objectbase.SwarmImpl;
& _; a3 v4 U" J3 ]$ \import swarm.objectbase.Swarm;' V8 Z& _, u8 z: p7 q
import swarm.activity.ScheduleImpl;
/ `" _6 X9 f, W/ H% X- ^1 @import swarm.activity.Activity;
% \/ X* [5 a* _: Eimport swarm.activity.ActionGroupImpl;
, t* ?* H# ]/ p) E% H" X) u! V; r! M  fimport swarm.collections.ListImpl;
0 H$ v4 ?- H$ w- uimport swarm.defobj.Zone; $ y5 Q+ k* |6 H
import swarm.Globals;  q# s0 l" T. |
import swarm.Selector;- Z& Z" L. P; e5 y; Z
import swarm.activity.ActionGroup;
) P5 q- {! |& w2 Y) r1 @7 e& A  nclass Agent {
; D  G4 d* a3 w$ i+ K        char id;1 T+ ~( S& H% ?2 w

8 L2 N* i) l2 l9 d. J7 H  o1 l        Agent(char id) {3 p, E+ M8 {- K  _& K$ `
                this.id = id;  F4 b, s/ F; j4 z: L2 Y2 F, ~9 F
        }
$ I& `& f( u" w' ]9 f  x# p7 o/ Y
7 O: N3 o* ]* X* A* _        public void agentStep() {
+ C0 R6 l( f6 x& |& U- l9 V# X3 X                System.out.println(id + ":" + Globals.env.getCurrentTime());
" d' R6 G/ b: n. U* G  e: Z; Z/ M        }' A( l5 Y% \/ I. v& A* j
}
# m3 f  R) e7 B% g* h/ M5 A0 [  E. J# A
public class ActionGroupDemo extends SwarmImpl {
$ g- c4 |0 z$ l        ScheduleImpl schedule;/ C$ \8 P$ o, x9 [
        ActionGroupImpl actionGroup;
% T- U: E2 W# d' l        ListImpl list;
! X2 P2 u' A2 J* i5 i        char Id = 'a';3 n( S6 s6 |7 @  [. X+ W5 P8 F1 Z

3 M& m5 U  ?5 z        ActionGroupDemo(Zone aZone) {
2 l, H0 j# U% C# j& o6 l                super(aZone);
& R7 Z) o; W% X: y0 B2 j- t! g                list = new ListImpl(aZone);
$ n+ j$ o) [+ W- G! L/ N                swarmSetp();/ N* a* w: v6 j0 \3 f3 T
                actionGroup = new ActionGroupImpl(aZone);" G% s0 i& ~6 Z; C) b  P
                schedule = new ScheduleImpl(aZone);
2 T- p, G" l3 N                try {! n: [! Z( x; v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 h6 {$ X9 X  d5 U0 e; ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 N4 N" x& K9 y! B3 e. j                        9 e" o/ o# S! `* h$ `. n* j
                        actionGroup.createActionForEach$message(list, agentSel);
' a9 P- k* j9 O5 _' N8 t# |8 O5 W                        actionGroup.createActionTo$message(this, swarmSel);
, ?: s  Y  w5 T" {* X1 @2 ~                        schedule.at$createAction(0, actionGroup);
7 A& {% O, F8 D* o+ H                        schedule.at$createAction(1, actionGroup);
9 G& h: G& C, V: m# X, q8 v2 u/ Y                        schedule.at$createAction(2, actionGroup);
) E- f: r; ^( E* Z  e; J
1 j4 r6 ~$ b* l5 Q+ o8 P: g                } catch (Exception e) {
1 l. Q3 A) a1 [* R" m' Z0 B2 e9 L                        e.printStackTrace(System.err);: j; k  C8 _  t; i4 ~
                        //System.out.println(e);
! W3 f. ^$ ?; X+ |/ M# m, Z                        System.exit(1);7 y  s# B9 U. q$ ~
                }
1 l3 F% s/ w/ j* R& W2 A
4 J* e& Y1 A2 x/ m+ Q9 i" x# B% l. v6 \9 x& ]
        }& J: e. |# V4 c- z
, `9 ^) ]5 w" g4 r0 n
        private void swarmSetp() {
8 t  Z* C: H" l" K8 s                list.addLast(new Agent(Id));
& y8 r& r& u9 {0 c4 Q6 v- m                Id++;( O- o6 P6 D' j: n
        }
+ W3 d! h2 L. [$ K' U+ s3 E% q5 H. e, H/ M, I) v& J/ J, U4 d
        public Activity activateIn(Swarm context) {
6 R1 ^3 f7 `% ~5 D9 X$ q                super.activateIn(context);- F2 m7 @2 `* A9 w" c& I
                schedule.activateIn(this);
" g3 ?& o. }0 [8 t6 K                return getActivity();# P' [& X! @/ t
        }& q9 ~2 E# W6 |: @
& i: j7 R% \- ~% v9 w. @4 c
        public static void main(String[] args) {7 p- ]8 C3 V- ?
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" c! r( u6 t* \                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 i, l) r) r2 G! D1 H/ _
                swarms.buildObjects();0 j  k- O% a$ `
                swarms.buildActions();( M9 F7 T  k- V' J) L! A
                swarms.activateIn(null).run();9 G1 Q$ H) r) s( z
        }! z) e- {! W& J

/ _: p$ S, Q" h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-15 15:27 , Processed in 5.227702 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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