设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6104|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 ~( ^, R- Y' z4 B

8 s) `% v+ j' \) A4 |. f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# Y3 F( o& D' U( F% ^! i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 i0 @$ a0 F) s. P2 y
swarm.SignatureNotFoundException. x3 e6 j9 K: [2 l0 K: h. \' q5 c
        at swarm.Selector.<init>(Selector.java:76)9 y: x! k7 T; }( ^) C  S% s  o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' x2 u- u, P7 {8 d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 ]4 n  P; J8 @: \
$ T' R9 i* X8 j  d4 {6 i2 |
- f/ x- t) W, N
import swarm.objectbase.SwarmImpl;
1 L5 b( U! u! i+ [& {import swarm.objectbase.Swarm;
' B' ]3 L; c$ m9 O9 g+ D' `import swarm.activity.ScheduleImpl;3 I3 S& z/ f" j. v! \5 Y
import swarm.activity.Activity;
# v* A2 ~% x* o' v* qimport swarm.activity.ActionGroupImpl;) ]8 U/ u+ Z. b& I) K/ z
import swarm.collections.ListImpl;
6 L9 P; l1 O- z2 e/ O7 w$ J' r2 Fimport swarm.defobj.Zone;
: m+ b$ ]! h! X) Q  u: _8 simport swarm.Globals;
& b; c7 E# o3 q+ N1 Y4 ?- B& Zimport swarm.Selector;- x& ^. F' R2 a/ p. x
import swarm.activity.ActionGroup;
# a$ C3 e5 {. H  Q  K0 eclass Agent {
1 u3 r2 Z) d1 j& ?% q        char id;
3 ]* c* r+ k, w6 Q0 B0 {7 |5 x6 c3 r3 p. A
8 e6 Q  |" Q8 P9 l) N) ^        Agent(char id) {
  R2 Q( ~! \4 q6 S% `                this.id = id;7 R3 s2 W; f/ o) ]% t  E
        }
1 _8 D$ \) \; x, I; s( @5 c! P" a0 z4 c5 t( Q
        public void agentStep() {
: i2 U* X* q( {( Q  t; C8 `% V                System.out.println(id + ":" + Globals.env.getCurrentTime());1 {& t7 U" d8 }+ ~
        }5 N0 z: x6 F. c0 G
}
2 u3 \& M2 |& e' P6 E  x8 J( @$ t) S* s9 g" s
public class ActionGroupDemo extends SwarmImpl {
6 U- t, D' a4 w% N' x        ScheduleImpl schedule;
- ^+ J2 ?7 M, A* y( A" g* g        ActionGroupImpl actionGroup;
5 C! R* V, ?1 k+ O' G        ListImpl list;
3 m+ P" d% L6 q- j' D( A; p        char Id = 'a';  S3 _$ D8 D8 |3 Q4 Y& x) F) R
# q  T3 L7 S# W
        ActionGroupDemo(Zone aZone) {  L3 M! m" t  Z: y3 j0 g
                super(aZone);% V( N% O8 n9 p+ G! g' L# i
                list = new ListImpl(aZone);1 E, e3 i; N/ U7 G, c! G
                swarmSetp();
3 K) q: L9 W# u2 \/ Y4 d                actionGroup = new ActionGroupImpl(aZone);
% N8 N+ m# ?7 e: A0 ]                schedule = new ScheduleImpl(aZone);
" w+ o1 L) s% y( O8 S" D                try {# ?2 n, v2 J. }" z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 z( e# M( {! D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( s* G* S0 G" X  e; F* s' r3 [2 z
                        ( H' O! y8 M% [
                        actionGroup.createActionForEach$message(list, agentSel);
  _7 m8 _6 [  a: e/ p9 M                        actionGroup.createActionTo$message(this, swarmSel);: }  U# d$ [2 c
                        schedule.at$createAction(0, actionGroup);3 L5 v$ L( a" n) ~5 _- Q- H/ l6 U
                        schedule.at$createAction(1, actionGroup);
- G% h2 I$ K1 M0 _                        schedule.at$createAction(2, actionGroup);
8 C- W. V) C0 o/ q+ {4 g0 q: {  |0 P4 A$ ?* q0 `6 e
                } catch (Exception e) {# O, M1 q" f! Q9 V* w
                        e.printStackTrace(System.err);
; M: i- y- @. H. q" P$ M/ L                        //System.out.println(e);
, N5 R2 d* }/ \$ D2 g$ F                        System.exit(1);1 F/ [2 Y9 j1 e
                }& g9 z$ Y; O. M9 e( h
2 l% L& h' g6 ]
5 K  U) I+ \& f; `1 P
        }
5 I( a( h. X9 R5 U/ K; Q
/ z4 @  P, s  ]- v) V$ q" Q5 ?        private void swarmSetp() {. Q' n0 s  V9 U
                list.addLast(new Agent(Id));
! W: P  @. |8 |" h& n5 z$ E0 j                Id++;
1 l+ ^8 d/ H  {& ~) Y        }, L) H2 R1 H/ u
/ |; g: c+ t; I8 A% |
        public Activity activateIn(Swarm context) {$ i7 Y5 Q1 Y; v- l: b3 @: ]
                super.activateIn(context);
+ ?8 ?% c. i( c& ]  S                schedule.activateIn(this);  `" e/ I& v  i4 _9 {9 Q
                return getActivity();
7 D8 V: I9 i. u# P2 |        }
- i* G7 [0 m0 }3 |9 e
9 C/ E; X" i0 p6 q+ B9 ~        public static void main(String[] args) {! t0 M& B* E, o; k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 c0 A. p& ~  J" D" g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; t3 P+ y9 G8 g3 _8 M/ s7 y& c
                swarms.buildObjects();
3 |2 s1 P" d5 j, u5 T: U                swarms.buildActions();% M$ s& t- n1 `: T
                swarms.activateIn(null).run();6 M& G7 X3 |' x7 K2 }
        }
5 e  c7 T  j4 l
& v- ~: n& x/ T8 o, S" I7 O}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-17 23:17 , Processed in 0.017509 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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