设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11946|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 T1 g+ i5 X( |5 w) f3 g; T# }
- X" a  ]- a3 W9 L- \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! B* L  ]% T) [. Q' f( ]4 c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ K! b/ S8 W' O- Y) u, W
swarm.SignatureNotFoundException* {+ d( u( N$ @4 R. U6 X" u2 _$ d
        at swarm.Selector.<init>(Selector.java:76)
6 c0 J4 N6 B5 s8 s0 U+ H8 N/ X        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- V. [: n: Q2 S6 q
        at ActionGroupDemo.main(ActionGroupDemo.java:67); L6 Y2 n! ?- }+ A0 F
1 {1 L; N( j6 J% _6 A5 u1 S0 x+ c' n

. |: N9 v6 I1 e1 j' k, nimport swarm.objectbase.SwarmImpl;
0 K  i3 A1 o& t) Q$ w) M5 ~' dimport swarm.objectbase.Swarm;
2 {# I* }9 x6 o- Q8 Aimport swarm.activity.ScheduleImpl;
6 D* r  y6 K& T8 d5 c  V* b: \' `import swarm.activity.Activity;0 |4 P# O: C6 B/ b) y, g& i
import swarm.activity.ActionGroupImpl;( T; R; Q" G( _, {
import swarm.collections.ListImpl;, E* c* b: K" ]. R/ g
import swarm.defobj.Zone;
' M: r- ^( e" Z. Z! D- ~import swarm.Globals;% c$ S  ?0 o3 I* \7 M* ]* l' l
import swarm.Selector;! L7 L& P9 ~# j5 [% P/ B
import swarm.activity.ActionGroup;
$ _8 ]5 y- q& [. b5 fclass Agent {9 i2 L0 o9 G; J- U
        char id;% W# {( S$ s+ v9 ~% C0 t" R# s
0 _$ P, ?$ g6 t( J
        Agent(char id) {4 ^( A! _' X' r! T* M
                this.id = id;
2 F; U4 K' Q8 S2 S& u) n' I        }
- ~# f) B7 x- v0 v9 l% j- _8 U! G1 t9 K5 V$ O
        public void agentStep() {
( A4 w6 B, {" _/ Q' ^9 c                System.out.println(id + ":" + Globals.env.getCurrentTime());* G/ m; B, a. `  C, M& T9 [, d
        }
* t+ z% y" d5 K}
/ F1 z( ~$ t% C
* \$ ]9 F3 t, K8 n2 i! G, Ppublic class ActionGroupDemo extends SwarmImpl {! _9 a$ G: F: N2 Z
        ScheduleImpl schedule;- H9 p3 t0 _+ }# K" t
        ActionGroupImpl actionGroup;& t" P: o( c$ @- P; {# [
        ListImpl list;
+ ?( g/ c: p' n        char Id = 'a';3 b, O& R' L- L6 _

9 D; K+ i2 P4 V" a% l/ _* z        ActionGroupDemo(Zone aZone) {  j7 i$ X9 D) c" I
                super(aZone);
3 r2 x9 q, o& p. U4 K& P4 a/ A                list = new ListImpl(aZone);
$ q+ e9 _9 s4 x. W7 f                swarmSetp();
. A; J5 `# `4 a# G: o3 T+ {                actionGroup = new ActionGroupImpl(aZone);
1 D+ l/ j7 {9 n4 }6 O                schedule = new ScheduleImpl(aZone);: r! D+ E& D' q- F
                try {3 [0 u# F. J: B$ x! J/ i! C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& \% s& O. c6 z0 P- e8 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" g7 a9 w/ b  Y% a+ j# g                        2 r& E% q, n6 v& j! Y0 y1 e
                        actionGroup.createActionForEach$message(list, agentSel);9 x/ b% g2 l- v7 w; h' v, s
                        actionGroup.createActionTo$message(this, swarmSel);# _! d+ p7 v# W8 ?
                        schedule.at$createAction(0, actionGroup);
- q( N' j, T, E                        schedule.at$createAction(1, actionGroup);+ S0 Y/ `7 Z) l+ c4 Y
                        schedule.at$createAction(2, actionGroup);# O6 R3 Q, Y$ M. z1 U

" l, C  K- F2 L4 c! k+ ?) V                } catch (Exception e) {/ t: d: a' Y: g% l
                        e.printStackTrace(System.err);, O% s, S+ j. t0 q. Y
                        //System.out.println(e);
1 w2 i: d+ `, Y                        System.exit(1);/ Q7 n( \2 W% @  `7 G- M1 @
                }2 M' H2 q3 e! k$ [. Y! d
- q: F( J- b0 C. q) _) x' U

8 B; S* i  I/ I5 a: J/ m        }
5 ~9 L& B5 Y$ z% O& }* a2 ~0 u5 N( w8 R9 T. e3 S/ |: {% s
        private void swarmSetp() {
# m1 r0 i$ ?* M& O  e5 l6 p                list.addLast(new Agent(Id));
4 o1 [. S! z9 U" m2 N                Id++;- {& a  z; n: n& O
        }! `" ?7 @6 R3 `! M3 I! A

, N# S6 ]1 _) f        public Activity activateIn(Swarm context) {/ X8 n( M4 U8 U3 G
                super.activateIn(context);
. W3 u; X" j8 V; L, y                schedule.activateIn(this);. Z4 e# g- L  x& L
                return getActivity();% u, o( W8 W, `7 X  F' o5 [
        }
) d9 ]( X2 s# g
- [- k7 ^8 E- A        public static void main(String[] args) {
" \% P1 ]4 `) h/ k* a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( Q# l0 u4 J2 }: I( ?  Z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ o. Z0 `. Y' A% y                swarms.buildObjects();
9 _4 V4 `4 R( v, i: f  m. {1 O                swarms.buildActions();
! I2 N; }. ^( g5 n                swarms.activateIn(null).run();
  P3 G! \# T- X0 A. M; x        }
' U" R: Q5 t0 z+ d0 i. Z
0 F& J; p: R8 W5 H2 D1 r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-26 10:07 , Processed in 0.013360 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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