设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8535|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! x2 X( d( u) {; E. |5 g+ \
" \7 r; a# M5 _9 Q; M6 p; I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- T1 b4 O  X% ]0 G$ t) R' \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 l1 y8 h( C* k( w- O/ \
swarm.SignatureNotFoundException+ z# ~3 @7 k% V- l5 p/ s
        at swarm.Selector.<init>(Selector.java:76)
1 U9 B0 h( e$ K4 C& E4 J6 C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 k4 F* M) `0 \' t$ ]' r1 U        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 z- p) t1 w7 j) I* ]' f
- n. V* t: e2 i; q3 }

: d6 N, _" c3 m: S, Vimport swarm.objectbase.SwarmImpl;, O2 R( n3 ~8 S
import swarm.objectbase.Swarm;5 b( V/ A# r1 b/ v& `
import swarm.activity.ScheduleImpl;
( k! z" I$ O9 A) v3 B* Z5 W6 ?import swarm.activity.Activity;+ A% a- a9 w! c; F- X$ d
import swarm.activity.ActionGroupImpl;
9 B1 V* D' j# a2 iimport swarm.collections.ListImpl;8 f0 r3 [0 r  o( f1 _
import swarm.defobj.Zone; 8 \% x  S6 S' i2 V
import swarm.Globals;7 o) Z5 `! ^! [
import swarm.Selector;
/ y8 _, i8 x% ~import swarm.activity.ActionGroup; % d8 ?$ A7 I7 f8 f1 l/ y
class Agent {, n1 k; F  Q: x- v* h- B0 p; \" j6 L
        char id;' H4 l8 j- y' Q1 d2 A' h9 B
- |4 U  f( }0 F& Z
        Agent(char id) {
7 w) D& V9 y* t. p8 l4 @                this.id = id;
4 D5 T+ N2 \* G6 T  k+ e; a( M        }4 e/ t- c  H3 W

4 [% D6 V: L- d9 A' M0 O        public void agentStep() {
# b9 Q8 s1 X( }7 d; h7 V& D$ v                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 g5 l1 g5 x* L3 q) T9 u) v; u        }9 K2 O! ?5 @& G% D, C. `
}, c7 K. k" p0 N% O1 c( ?  [4 y2 Q  x

' w' l3 c3 x' }3 v8 lpublic class ActionGroupDemo extends SwarmImpl {  `/ E" K" E# |1 L( v2 |# i2 l
        ScheduleImpl schedule;+ m* A# A1 i2 j3 \  F
        ActionGroupImpl actionGroup;
4 Z1 U# p8 J- k2 k4 m3 b; m        ListImpl list;
5 g% F  \$ l: H  A) u; ^        char Id = 'a';
; H/ c, M! b: c6 p5 H2 d
* [5 O2 q0 D: T4 w# I        ActionGroupDemo(Zone aZone) {% f. N' b8 E: y2 f
                super(aZone);
) U" S1 }/ }8 w7 Q$ }, t# t                list = new ListImpl(aZone);
+ Z; w! c% ~7 C# G6 s; U# B: D7 ]                swarmSetp();; t3 v! f5 r+ U8 I  D: f
                actionGroup = new ActionGroupImpl(aZone);, {; |- ~5 [! C
                schedule = new ScheduleImpl(aZone);
" t& L( m+ q: x, b, w" [                try {
+ B7 E) c9 ~' j, N$ L' \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 X- C0 M5 h1 o; L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) r1 T( k7 v$ e( x$ l# ]
                        , g9 ~* q+ ]* @/ A
                        actionGroup.createActionForEach$message(list, agentSel);* h) N: c& h3 s& M* ]
                        actionGroup.createActionTo$message(this, swarmSel);3 l' T% ~$ _& p, h4 Y
                        schedule.at$createAction(0, actionGroup);) `- f' o3 F2 [% U. g, ]1 B. F( N
                        schedule.at$createAction(1, actionGroup);
3 E7 C( {; Q2 A' }/ [                        schedule.at$createAction(2, actionGroup);
6 x" v7 e% I0 B6 v' G, Q' E+ U/ ]2 N/ L, H5 D) N
                } catch (Exception e) {
8 f; I! Z& v6 U$ S  m: {: L" s                        e.printStackTrace(System.err);
% e7 l6 A+ ^" u                        //System.out.println(e);) T0 F7 E+ M* ~  S2 |: M
                        System.exit(1);$ {/ q% q2 F$ n/ Q# v& ]
                }: J+ \. }/ {# `$ ]

5 J$ Y* N& g. T  S
3 s( j3 `7 |3 k) J( B; \! Z        }
; ?0 E( E6 a1 K7 a, |3 s& \2 ]+ S2 u$ Y! t
        private void swarmSetp() {, E* i7 N; N$ Y0 X1 F
                list.addLast(new Agent(Id));) L" T: m9 a$ g0 C/ `# h& J
                Id++;
# V( z4 X" P: v8 B        }! M/ B& [% B6 z0 S; R
( Z& X7 e0 o3 w5 W; C+ R6 r5 G
        public Activity activateIn(Swarm context) {
8 l+ r0 o4 n8 {9 p                super.activateIn(context);
$ _. l6 u4 Y) Y$ p1 `. R* g0 y: M9 u                schedule.activateIn(this);0 e, x1 N/ _) W; n
                return getActivity();- J2 B. P7 s5 L2 Y6 N% ]! H( Q
        }
- K% f1 ]. \; z* ?/ c" _9 u$ ]0 U" E) i: b: x. W/ Z
        public static void main(String[] args) {
0 t; l% Y9 C4 E& D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  K- }4 r# z' y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& x9 f/ ~/ b. C9 R                swarms.buildObjects();: `0 \" z% ?5 \0 c( v
                swarms.buildActions();
5 d2 `+ _$ m) [" ]) {                swarms.activateIn(null).run();
( I+ B8 s* k% j        }  y. n" U0 u. e. Q# p$ P- m8 W
2 v" g7 E9 l1 z* \9 V: E" Y$ _
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-15 18:20 , Processed in 0.017641 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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