设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8942|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : ]! `: u% |- O# B0 \3 M6 o/ D5 \' j
6 |& I! K$ Q6 ~1 d, Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 W8 ]; E- e$ D0 Y" U9 h/ f
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." S7 p& u( `& V2 e* F
swarm.SignatureNotFoundException
2 h: r  o/ q6 d" l# M4 t3 Z# |        at swarm.Selector.<init>(Selector.java:76)1 E9 h. e& d" R. z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 R% S# {9 a* `  o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  G8 Q6 U+ a2 @
4 B) \- g1 x& i3 i- B. A3 ?4 B7 q. H$ e1 [
import swarm.objectbase.SwarmImpl;
8 U( W" S* G9 r7 \- l! D7 H8 iimport swarm.objectbase.Swarm;
! \( F6 G! [* p# k: k) jimport swarm.activity.ScheduleImpl;; F8 T, Y7 t. F. n
import swarm.activity.Activity;
( j0 h- w2 u. y+ s0 o& ]! g3 ximport swarm.activity.ActionGroupImpl;! y5 m5 H* U5 F
import swarm.collections.ListImpl;
4 m% d2 H  C: Y) s5 Uimport swarm.defobj.Zone; 3 v, n# b5 Z. J0 m* b' ?
import swarm.Globals;2 G7 s0 F" }2 H/ j" o0 M6 y& x
import swarm.Selector;
! p) m& ^( _5 @5 K' m- X0 W4 G. F* X7 vimport swarm.activity.ActionGroup;
1 {  v9 B3 A+ G' ~0 P# U3 Rclass Agent {
( d: C9 E4 n7 z" C' L) U' M        char id;
$ t' p8 q+ n% [. M2 ^
6 X, w7 }+ k! E! l        Agent(char id) {- \8 ^/ D1 L, W
                this.id = id;- o& d; B' x0 N+ Q$ x4 ^
        }. v8 U/ b2 }5 i5 Y% \" p% O* M
8 r5 Q* u4 I" }$ R. K- w
        public void agentStep() {
, {! M. e' [3 x* Q5 g, \9 `; m                System.out.println(id + ":" + Globals.env.getCurrentTime());! ?5 B1 ^" y9 x$ |4 P6 [" {4 y3 G
        }0 f' o( j+ [9 n% _4 P4 i% U. w
}
" q8 L( B6 a" N2 f0 T6 U* _' ]2 v% Z9 M+ I1 ~; j7 t
public class ActionGroupDemo extends SwarmImpl {4 l8 A0 k. P( \6 r
        ScheduleImpl schedule;4 w- K; B# ]8 j* R
        ActionGroupImpl actionGroup;
! e/ Q% A0 T( T; \        ListImpl list;
6 N( s; O$ i0 w        char Id = 'a';
, Q; `( [+ g/ s  {! z
/ R$ X6 \4 V+ E2 Y9 f  f        ActionGroupDemo(Zone aZone) {4 K2 ]/ ?! ?1 i
                super(aZone);* n8 a4 r5 ]0 R. P
                list = new ListImpl(aZone);5 s: h8 B2 L0 @, _# `4 N1 z5 H
                swarmSetp();
! U( k( Y# v& [) `                actionGroup = new ActionGroupImpl(aZone);
6 o/ C. z  z5 u+ f  R                schedule = new ScheduleImpl(aZone);( ^9 @  o- B" J; i" M; o! h' @( v
                try {( i2 h4 w) e. Z, B' s; a/ P8 _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ R9 d0 x# `7 B: q* C                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; m, I% |6 `; e9 T
                        " p: }9 W" N9 A* ^2 V) V
                        actionGroup.createActionForEach$message(list, agentSel);
# A0 O+ B" v, S4 q7 R/ |                        actionGroup.createActionTo$message(this, swarmSel);
' F: s! Y! s+ ~& _' a                        schedule.at$createAction(0, actionGroup);  \( Q" ^$ X% Z. w& F
                        schedule.at$createAction(1, actionGroup);& Q1 `! {! R' w. |/ R, d. Q3 e
                        schedule.at$createAction(2, actionGroup);
) k6 j) w) x4 [& C- C" O* I# |' P( b
5 k$ F7 W+ e8 I5 g- ]7 \0 W                } catch (Exception e) {" u, c) g3 R  [7 K0 Y
                        e.printStackTrace(System.err);
  T0 L: x% ~* N+ B9 j+ j* L                        //System.out.println(e);. v; [0 ~) O9 _% r& q- {2 C% Q
                        System.exit(1);4 _0 f# b1 n2 J. A) \8 W
                }
! w- G& o; h+ i" k  e4 w3 P
: x7 Q7 u+ a6 V2 c0 N- _' ~. B% j
2 E) h2 X% G9 y2 |+ v. Q" |8 y        }; \7 m( z- p6 V& n6 P& t
% o/ B% u) p2 p0 a
        private void swarmSetp() {
( w: F1 T% M( ?) \. V                list.addLast(new Agent(Id));
8 @' k* v' M9 ~+ O                Id++;
8 F% |6 L+ Z5 n" e2 G# }        }, r3 j/ y8 y- @' K

; W* g* c. P* K/ j$ R( s+ W. t; [        public Activity activateIn(Swarm context) {- ~* V4 c, [, `; p7 b" O0 @5 p7 [
                super.activateIn(context);
0 j" q# U" m$ {3 `                schedule.activateIn(this);
+ }6 h/ @/ ~# F$ R. P$ p9 @" N/ G                return getActivity();
' Q5 ^0 G. _+ U" C        }
& C( l$ S% F$ ]( W1 R4 |; y3 [4 x* J
        public static void main(String[] args) {
9 t5 X# x+ W8 U9 D4 y# p1 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! g" Y" U, [. ^8 Q1 P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. b7 D, l5 j+ {$ i) J
                swarms.buildObjects();4 ]4 M9 V( Q7 |* ?4 c& J& @
                swarms.buildActions();! u& Z2 Z& G! X" a) B
                swarms.activateIn(null).run();
+ w; ?  o# K. t7 ^3 d/ B' G" w        }
4 N* `  X; C* [. S, I& Y% s% i7 {6 a# o& P! b7 Q9 g7 w
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-27 15:04 , Processed in 0.018380 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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