设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7744|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - {* z/ t6 T$ R. k6 X
3 i* X. f& U3 D1 p# Q- Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 l9 f' m9 L! j4 }9 N8 j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. J6 K% f0 [2 N% S
swarm.SignatureNotFoundException2 x" S% Q) o/ O# I
        at swarm.Selector.<init>(Selector.java:76). j% \! j* \& C) P( s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 ~. I9 d7 D! [; B8 ]
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 L3 Y& o* D) b" i9 Y6 H

  u7 {. {! O& R; y1 @
& U) C, n, [6 r6 h" z2 cimport swarm.objectbase.SwarmImpl;- I+ Y4 P& P$ B/ |7 V+ D" V
import swarm.objectbase.Swarm;
2 H0 g* P  R6 q3 L+ |import swarm.activity.ScheduleImpl;, {! F/ K0 v5 V- E* z& {
import swarm.activity.Activity;
6 k! x* M% k1 ^, U. mimport swarm.activity.ActionGroupImpl;  w2 s- w. N. o- @4 q5 M
import swarm.collections.ListImpl;- Z6 c5 I& s7 K2 R9 y4 K$ a
import swarm.defobj.Zone; % b; v+ A9 d- Q" [* K
import swarm.Globals;$ U0 W6 k* l. V% k: v9 b
import swarm.Selector;( w( q3 t. r+ Q. D; ?3 ^
import swarm.activity.ActionGroup;
$ s# d- i0 o9 qclass Agent {
. x' \. m" N  b' G' b        char id;, F" J6 d7 }$ s1 R! l

9 r% X' [: S6 A! K$ k( P7 ]* u! x        Agent(char id) {
0 m, U- I: s( |. T; r3 C$ g1 ]. t                this.id = id;
& W; Z0 U& s! e3 _        }
# t; g' N% j2 m; Q' u: o7 g9 Q; E) F: d" G- P
        public void agentStep() {' \7 T1 E: I: M/ S
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( M& l: L' N" t8 m4 x' i        }; z0 |  ^1 H) e- q$ K
}/ e" t/ f! g2 m
6 j+ \, t" J3 @
public class ActionGroupDemo extends SwarmImpl {
. @% S4 C& z) Q4 A$ x2 r9 k- _        ScheduleImpl schedule;
1 o% E0 e( b7 [        ActionGroupImpl actionGroup;( f7 y) N% G& v9 L8 x/ p  o
        ListImpl list;9 f! y/ x0 D5 g8 \, h3 x0 I$ y
        char Id = 'a';
; [( _7 `1 v* L+ s/ v: e- u- n/ \1 m" I) E. W& p
        ActionGroupDemo(Zone aZone) {
5 d1 ~! K& e6 _6 ?" X* f' |                super(aZone);
" z& ]2 Q- K; F$ r5 y8 a                list = new ListImpl(aZone);
# u) O$ ?6 V& Z* I2 A6 c1 B6 _                swarmSetp();
" n/ P6 ~9 |) E" |5 O$ @7 [                actionGroup = new ActionGroupImpl(aZone);
7 l1 S$ ]2 ^5 O, n/ s                schedule = new ScheduleImpl(aZone);$ O% U+ ]! Y' D, `* n3 o* S
                try {' F7 k$ u: \2 a7 T9 S* v) U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) d# M8 O' d3 G( e$ I1 H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; u+ o6 a' b! U+ w- g2 h- g! d: E
                        8 P% p0 u3 n$ b
                        actionGroup.createActionForEach$message(list, agentSel);
# @2 L4 Z" w# D. a5 p, S; x                        actionGroup.createActionTo$message(this, swarmSel);; U7 |5 ]% V( i4 v$ v7 c6 [+ @+ ^
                        schedule.at$createAction(0, actionGroup);; o  c% k& T% p6 b
                        schedule.at$createAction(1, actionGroup);4 m- T8 ~( G  e3 w0 M
                        schedule.at$createAction(2, actionGroup);
" \3 P1 Z  p( u9 J- Q7 \, Z$ x8 e1 l7 M# L
                } catch (Exception e) {% d( o/ ?/ V! a6 u" G3 m) ]  }/ e
                        e.printStackTrace(System.err);6 y3 _7 ]# [1 q$ v  t
                        //System.out.println(e);
4 p' C& z# x2 ^$ [                        System.exit(1);
7 O  S4 m8 ~9 G4 b                }
8 G$ I" F" N# U' h' ?/ O+ I) L6 y, m; S+ T& y

* |+ c* P9 N+ E! R" I5 z        }
7 e  J8 N: q' [
& g; ?! N( t! h' ]/ D        private void swarmSetp() {
' F7 E# c% m, H8 A5 L4 R                list.addLast(new Agent(Id));
" u7 U1 O) A/ O( C                Id++;
; P/ }6 Y6 y* c1 k, h7 R* x        }, {8 _: f2 U/ e+ l
; R4 i) ~3 v% N5 a/ K
        public Activity activateIn(Swarm context) {, p' g9 V" f- q! z
                super.activateIn(context);7 j9 I, k. S: n- W
                schedule.activateIn(this);
* I6 ~" f$ l! z% ^! ?) E* e                return getActivity();5 v1 k( D- P6 H) C$ y; |
        }
) K, x9 w+ ]  I
) n$ d  d! ?* e9 l        public static void main(String[] args) {, p& `# E7 {; Y7 P5 ~1 p. c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ ?& h  M. J3 f, D% Q! p! d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ f9 _) ~" v) V6 r( n                swarms.buildObjects();& m: |3 h6 M* I  C- s, S# Y
                swarms.buildActions();
0 H) b3 L4 |( @) ]/ m                swarms.activateIn(null).run();" C* }3 B* y, N
        }& z- S9 m' N; z' f1 X
: ]. z6 I  Q4 G* G* r: `6 T
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-13 12:41 , Processed in 0.018399 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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