设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8136|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 X9 [) c9 U1 r% ?$ W/ p2 l

! Y) u- _( Z8 m+ I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- O' f/ k" ~# R8 |+ e& n  J  @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  m7 J/ z& i' k# v1 Y; x1 g
swarm.SignatureNotFoundException
1 x* X6 [; [: Q7 O8 \# h        at swarm.Selector.<init>(Selector.java:76)
) W$ v. Q$ J4 W  Q. P; d; n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. M; x' i3 q' T3 l2 `1 ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; t8 Z2 _) V: D0 O3 Q& u/ G
9 ?1 d! p) p1 k8 k  n& r$ a- {$ G6 f1 X6 G# \* u1 a' D6 F2 Q+ O/ I, k  G
import swarm.objectbase.SwarmImpl;
- \& ~1 O" T+ Z* _9 M  E/ _: pimport swarm.objectbase.Swarm;6 b% I; S& ^) U
import swarm.activity.ScheduleImpl;
" H# l: R6 `3 iimport swarm.activity.Activity;9 F5 C- w' R4 ]/ |- \6 _
import swarm.activity.ActionGroupImpl;' J' g+ V) d7 C7 I7 P0 l* P& v
import swarm.collections.ListImpl;
& ?9 q& y+ o( N& M/ B4 w/ dimport swarm.defobj.Zone;
  f+ ?; q1 k- D# k+ X/ |import swarm.Globals;7 M! h! k( Q0 ]3 G. G
import swarm.Selector;( t+ r; _' v1 D* _' A9 L4 h5 }  |
import swarm.activity.ActionGroup; " O5 B0 W! u6 B' W5 V1 B8 X
class Agent {
1 ?7 s; @, V7 C2 R: D+ w        char id;0 d8 h' U" C6 y8 b  L

4 F1 \. ]6 ]  e  X! i  V        Agent(char id) {
$ u2 L2 t4 r  t  E                this.id = id;7 D1 V  q( {. v3 ~& D
        }# Y4 |' W8 c6 T! @5 o3 B5 M

0 P, D7 ^! w* ?        public void agentStep() {% G5 C, r/ ^: q# S& Z% h  z  C
                System.out.println(id + ":" + Globals.env.getCurrentTime());( j# a( [* Q8 }  T3 B
        }
5 Z4 b% ^8 R/ w4 [2 P}% L# N: B) Z# |
& Q2 C- i+ O( j8 Q" m4 M
public class ActionGroupDemo extends SwarmImpl {
8 h" e5 _5 w; n* h9 N        ScheduleImpl schedule;
: `+ r% P* f( Y# ^* _        ActionGroupImpl actionGroup;
% D. W5 G+ x. ^4 L' U0 F        ListImpl list;$ y! E: W% B0 f  ?2 ^
        char Id = 'a';
1 S% P- h9 I: X5 W' Q8 ^0 w/ ?% h5 c
        ActionGroupDemo(Zone aZone) {
0 i7 R, R) u2 w4 E                super(aZone);, o! Q0 j# Y0 R6 e0 k0 ^
                list = new ListImpl(aZone);/ {1 ~# R; ?! o" z1 r: g
                swarmSetp();
# S/ w3 {8 f3 b                actionGroup = new ActionGroupImpl(aZone);
! L% Y1 h/ g0 u4 r0 I                schedule = new ScheduleImpl(aZone);
' j: C" t* i; S4 s& P: L                try {+ h& \9 x! S5 ]; k' _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 g- T, b2 O$ D7 D3 \
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* I8 L) g! B' |9 Y; o
                        ' O0 B: s/ j, T! `: o' z& U
                        actionGroup.createActionForEach$message(list, agentSel);
$ ]) W4 d* \, v  m! J                        actionGroup.createActionTo$message(this, swarmSel);: f5 I8 g9 ~' j* ]! |- V( p2 z
                        schedule.at$createAction(0, actionGroup);
# n* L/ |# F: W: d1 b% m4 d) }                        schedule.at$createAction(1, actionGroup);
) @3 |2 H' ^9 E0 {% b$ U2 v7 V9 G                        schedule.at$createAction(2, actionGroup);* u* P' Y/ k, y! }/ L( s8 R
$ V; `" N# |# X
                } catch (Exception e) {* @+ L1 n# a! y6 e5 P$ b- X7 G1 h0 o
                        e.printStackTrace(System.err);
: l1 _2 W; Z- K4 d, _                        //System.out.println(e);
; u  X$ w1 u% Z/ k2 x                        System.exit(1);
4 p; F$ t& u$ Q' f                }; x+ J# Y2 y5 r* W4 U' p4 r

+ j: I3 i9 z/ e; I) L. R9 B) S& y
        }
, |7 ]  m2 |9 r1 u8 \
) F( x( a! S- T' [! v' g8 b        private void swarmSetp() {1 t6 u) Q  |& ]+ t( I; d
                list.addLast(new Agent(Id));+ ?# a+ u+ h+ o$ f+ d
                Id++;
( L/ e1 R! h9 }/ H# H& O( A4 C9 `        }
9 s) E& `# K" w
+ q8 z- `: \" q+ F- u3 y( T5 E9 k        public Activity activateIn(Swarm context) {3 a* @6 O) Z# g9 I6 A' E
                super.activateIn(context);
9 Z  S4 c8 w) R( x4 z+ k                schedule.activateIn(this);7 s* e! W  J1 H9 Q$ k
                return getActivity();
6 `. S5 W/ `2 N! ]0 s        }
6 C! a& }4 @# ^* Z3 J2 m1 v* }5 B- S
        public static void main(String[] args) {
* H0 p. N  w) D: i  X  l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- B  n% b1 D% o( N+ x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ }& d' l  M% s' @: X                swarms.buildObjects();+ D" m+ a. ~2 M8 ?- f- j: Q
                swarms.buildActions();
+ x* O6 R2 Q5 W1 L$ R                swarms.activateIn(null).run();
. e. z3 m9 x+ I        }
- W! v" b; V! N0 |  p" I, r! L. A7 }* S6 y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-31 12:47 , Processed in 0.022013 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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