设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7701|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 j: w' s) a2 l- L3 ]' y! Z! w& `) g7 j  C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 \% ?3 {: K7 n8 M* V& _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 V6 C; Q- v5 f9 N: ^) Cswarm.SignatureNotFoundException
7 _( m  W3 P. y- Q  Y1 e        at swarm.Selector.<init>(Selector.java:76)- a4 \- Z6 n6 ?5 y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  y; |' ?1 F$ {        at ActionGroupDemo.main(ActionGroupDemo.java:67)& \: p! B& f& |% M3 N

( b) K. r; D0 x& X4 @# k
1 G0 Y9 \* p2 x, I- {0 T3 y% qimport swarm.objectbase.SwarmImpl;& _. B3 V7 Y/ {8 r( C" p$ r2 d
import swarm.objectbase.Swarm;4 \8 F# H' q2 x2 f  A$ G2 l4 C; i
import swarm.activity.ScheduleImpl;
0 U7 n% A+ K9 f  r1 x$ g8 q' Aimport swarm.activity.Activity;
( c& N% Q: |" m; x' L+ `import swarm.activity.ActionGroupImpl;
+ Y% r! V0 x% B( rimport swarm.collections.ListImpl;# C- G$ l5 c" b7 X6 H% c# o
import swarm.defobj.Zone;   p9 d- o, z0 s0 W2 w
import swarm.Globals;
# n( B% \- U5 X( J/ vimport swarm.Selector;1 ?: j$ k, X7 C  h
import swarm.activity.ActionGroup;
* {7 W6 u6 X! oclass Agent {
. x" N; a" }' W3 T        char id;
' p6 Y) }+ j  A: C. D
) s1 {4 ~- P3 S3 h' ]7 r8 l        Agent(char id) {
& d. f+ g5 C' O% D                this.id = id;
: ?5 b5 _( p- s: A3 |$ r        }( f2 H4 |2 p& ?/ D6 ~- K
+ t/ Z# j9 v# M3 T/ y/ v' t
        public void agentStep() {
+ n) t% E$ s) e# g                System.out.println(id + ":" + Globals.env.getCurrentTime());
, T6 X7 p! c# P4 z1 s$ e        }+ g2 V* z) |1 c
}
" b. p, i6 t8 l# I- H% _6 @
7 U+ a1 [' {4 rpublic class ActionGroupDemo extends SwarmImpl {
2 z. L8 z1 b* i        ScheduleImpl schedule;
& u1 O' Z$ f: ^; f        ActionGroupImpl actionGroup;, }2 w- z' z& s; Z8 \
        ListImpl list;4 T5 N" d. U7 _6 M1 ?, k6 N
        char Id = 'a';) r1 N/ q4 d6 d( u, t
; h8 c; k6 j( O, W- o6 G$ T
        ActionGroupDemo(Zone aZone) {
% g) i8 E) C. B8 S                super(aZone);
/ a; [" @7 x/ M) R$ d) K# ^8 b                list = new ListImpl(aZone);* y2 R! d  Q2 G' K3 d, ~& T; H2 r
                swarmSetp();
0 x' a: E7 X, E" Y2 R$ u                actionGroup = new ActionGroupImpl(aZone);, X5 q1 R: F; g$ B( N
                schedule = new ScheduleImpl(aZone);
* j0 l! _9 N" y4 U8 V0 T  Z& x                try {3 {7 _* ~0 L) E- O! G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 V! g5 K. |8 W  [0 B7 i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. m) f( P8 i3 u+ s1 Q                        
. b1 z  g& Z; _& I( B                        actionGroup.createActionForEach$message(list, agentSel);7 r9 }8 Q8 \8 m" |7 }
                        actionGroup.createActionTo$message(this, swarmSel);
/ Q2 H' H, K) x                        schedule.at$createAction(0, actionGroup);' j9 v, T$ ?1 ^3 P
                        schedule.at$createAction(1, actionGroup);
* u+ t$ ^5 l, Z% E                        schedule.at$createAction(2, actionGroup);
; Z$ V* {9 [* w& _4 d
+ N" r2 q/ {, R' g7 l4 q& ]8 Q                } catch (Exception e) {
+ g& p, o% e: R! F. g                        e.printStackTrace(System.err);5 ]- o# X8 a$ Z
                        //System.out.println(e);) O: a) |4 D; v$ ]+ T' T8 w
                        System.exit(1);
2 Y5 C! Z' q9 F5 z* D                }
$ H6 S( {7 Y5 F% @' \% w  s1 M. r  f
' M4 S. S8 D7 v
        }
- h; {  d! O3 [% V% W- h$ C$ g
' y/ V7 y8 A, A/ t' [        private void swarmSetp() {! n( z; Y# M" H, T: c& ?
                list.addLast(new Agent(Id));* p6 l1 ^; X& Z& A- O5 K9 U
                Id++;
& W, O; ?' U  l) A1 ^        }7 p& T! U$ A$ r0 r( g0 l3 W
- T  }0 d: W8 _; X6 `% a
        public Activity activateIn(Swarm context) {
) ?6 m' a! n5 p! F  }; E                super.activateIn(context);- }: I, f* L7 w# \" C
                schedule.activateIn(this);; p' ?5 e- b( E' h/ E6 B
                return getActivity();
2 N+ v/ k4 {/ r* d        }
! G1 O. m/ \1 \
+ U/ B/ R; n1 X# A1 m        public static void main(String[] args) {
3 c( h. o8 ?% G  n' w) o                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- g) S; q8 o" _1 z. ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 M# }9 V( v7 S7 X# p3 ]) ]
                swarms.buildObjects();' r2 m* {5 c/ n0 Y6 \" P& F
                swarms.buildActions();- x! W+ t0 @4 I: G1 O/ `! |6 \9 X
                swarms.activateIn(null).run();, Z+ {4 ^' z4 F: T* v9 n; Z, h
        }
6 e$ F5 l1 g. ^8 v: w' J
3 G( D' C: C2 R, o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 22:37 , Processed in 0.013402 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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