设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9671|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 d& a; [, d, x" p. C: j

, w1 L& z; T3 P. x  x本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* i$ q/ `/ d" Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* }' @) j* W$ c! iswarm.SignatureNotFoundException  x% K' K  o- q9 Q4 w- @1 e6 B
        at swarm.Selector.<init>(Selector.java:76)
( T; q0 e* X/ m7 {( l; F8 j( J, |- T* v        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* N2 I0 ?0 o/ o" }( g
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( V& H6 j( x& ?2 Z$ ^& W: ~9 V/ s2 Y6 ?

  P4 k2 h5 U5 |import swarm.objectbase.SwarmImpl;8 a, P. {  b" \4 p6 C3 j( o
import swarm.objectbase.Swarm;) B% I; @3 T- v3 G$ E; n
import swarm.activity.ScheduleImpl;
9 N5 ?! b! A9 T# [+ P+ c9 kimport swarm.activity.Activity;/ c0 P, S) B: Y
import swarm.activity.ActionGroupImpl;
/ Y1 Q! ]7 z% h) G+ a9 A6 L  g% Dimport swarm.collections.ListImpl;. w' L6 I( v1 t3 ?2 j3 C
import swarm.defobj.Zone; 8 ]- @" m, H! t; u- b7 R0 j3 t
import swarm.Globals;  y6 G+ W. B* a8 p( w  K+ d
import swarm.Selector;
7 j3 p( u' t2 `; H( }import swarm.activity.ActionGroup;
8 v% `- d. t/ i+ L+ gclass Agent {4 D6 S/ F7 k0 a) t& ~9 {3 N
        char id;, ?. e$ t" r( {$ B# @) P

5 ]. y+ q7 U! |        Agent(char id) {
0 V( e% H9 ?5 `1 E. t4 T                this.id = id;3 T/ }0 }$ d" k1 ]0 Q
        }
  U: Q# @. k7 g# f3 S& G% A0 ~7 `* w
        public void agentStep() {
# y5 ^( M; @4 z                System.out.println(id + ":" + Globals.env.getCurrentTime());
: u$ E: k2 }+ V7 O7 t2 o        }
3 M5 k) Q4 k# q' H& H5 E- J" S}
& }: J9 _, ~5 R$ G( S
5 y- x5 ^) Y3 n2 Gpublic class ActionGroupDemo extends SwarmImpl {4 @) u5 t: y# b% H) {
        ScheduleImpl schedule;
1 c4 n# l" Q9 U( Y  T# W2 S        ActionGroupImpl actionGroup;) J. h( n& u+ w
        ListImpl list;# E5 f% b! U* R: j
        char Id = 'a';
3 U& z, ~, K8 q5 _! b, I
* v$ e$ F5 i+ P8 d3 e, A. K        ActionGroupDemo(Zone aZone) {, H7 I6 r3 h! D. \9 r  A& L
                super(aZone);
: L% M" ?8 ^3 D                list = new ListImpl(aZone);
" G& P/ U: R- ^; r: [+ p2 P0 {0 {                swarmSetp();
" d8 C( Y. i5 c8 n                actionGroup = new ActionGroupImpl(aZone);5 a) ~$ u  Z4 `: C
                schedule = new ScheduleImpl(aZone);2 Q+ n/ s3 r) _6 X; ?' ?( W
                try {
6 _0 N: U9 x) J+ X1 D' h+ Y, ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 o) n; m- q( H* T" ?) S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ Q9 W' Y3 M/ u0 ?! C                        / N1 m- A$ L& |; k% T8 q6 B, ?; @3 b
                        actionGroup.createActionForEach$message(list, agentSel);
, z- R0 j9 }6 q$ }; e                        actionGroup.createActionTo$message(this, swarmSel);
& u0 _3 b! o" V" T( j0 x                        schedule.at$createAction(0, actionGroup);5 A0 m% t* _' f1 j9 q2 `+ ]2 P) e2 a
                        schedule.at$createAction(1, actionGroup);
; w& x  R; R1 Q% u2 D                        schedule.at$createAction(2, actionGroup);) r% e( w/ S- i- Z
- R! O9 i: g4 V3 [" g
                } catch (Exception e) {# \# G% H) E, m$ q2 Y# ~
                        e.printStackTrace(System.err);$ q1 D8 M5 Y& g# ?4 _1 q
                        //System.out.println(e);
* v7 a. ?1 W$ ?) R# W1 L' l. V                        System.exit(1);* M, ]; d1 Q5 n7 B/ U. p( `* J
                }
; }; T4 U8 h! F$ W7 M8 w( t8 f0 v, U( i# D- d

4 V' x4 f+ d3 V4 T$ y5 n# h5 C        }
. X1 m7 F) `' r( }$ w
, ^* X/ b' i) @3 s1 N        private void swarmSetp() {
9 t$ T- F1 z3 H/ I+ B                list.addLast(new Agent(Id));
* K5 S" U! Y, X                Id++;; g0 A. O$ v" C7 o8 g2 ?' Q- ]7 \
        }
* D  g1 u3 |5 i5 P4 R$ @. `4 j) r$ t  `
        public Activity activateIn(Swarm context) {
/ V6 e) z5 j% J# h' t1 g0 P                super.activateIn(context);
9 F" U+ ^3 v0 M; e) N8 V* f$ g( r                schedule.activateIn(this);8 H9 v+ i3 C- f$ U4 N: D
                return getActivity();
% ?0 E+ V" ?3 Z0 ]3 [2 q        }
8 L, d; s* V2 G' V0 N2 ^
; x! S7 \, r2 Y3 M' N        public static void main(String[] args) {
4 h" U0 h- ~4 p8 H. C5 K0 F                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 |# ], g9 d( z/ \8 l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" B3 S  X/ u4 Q. I9 p2 \  o                swarms.buildObjects();  a/ y' e, f6 ]; V& \1 A
                swarms.buildActions();+ |7 j3 O6 H7 N
                swarms.activateIn(null).run();
  C$ U4 B6 U: |1 O/ K. B$ a        }5 t& ^' N, U0 k: o
, y, K+ |* U1 C5 V( O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-19 00:27 , Processed in 0.019867 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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