设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6780|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : j& ^$ @4 f3 }. p' f+ v

2 X% k( [7 |9 @. ]% M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& ^% G. k& o3 V) O8 U0 Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; l4 D4 n+ z2 U6 p5 X1 Y) k# q; ]swarm.SignatureNotFoundException8 h$ P+ _1 H- s: P5 u. ?; z, O
        at swarm.Selector.<init>(Selector.java:76)! V; C7 i8 Y+ U
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 C( t% k% W, V- P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( r4 x* h* U$ \9 ~

1 a! e# o  }1 [0 a7 e4 n5 _& i/ s
import swarm.objectbase.SwarmImpl;* H' `. q; @; U
import swarm.objectbase.Swarm;0 b. j! k" ~0 {  U; T
import swarm.activity.ScheduleImpl;
6 k  {% c( Z! B" L* Vimport swarm.activity.Activity;( i/ G; O# v+ }1 }/ p! b9 x
import swarm.activity.ActionGroupImpl;
. M, _( C/ _5 Fimport swarm.collections.ListImpl;+ h) M$ Z8 L; e: V' C
import swarm.defobj.Zone; 8 J* `2 y4 @3 ]4 ]
import swarm.Globals;
9 {" a* P( G' n6 n0 Pimport swarm.Selector;
5 K" m: V" n& H; N7 Pimport swarm.activity.ActionGroup; ' Q6 n( L: j+ s  B, C/ N  d: y
class Agent {5 Y( U' z9 w! ~* X  T4 Z: u5 T7 a' M
        char id;
/ m* S; _) Q9 g. F  j' e+ a- m6 S9 ~) L! U  n- d- d# Z
        Agent(char id) {" @, q/ V- Y$ `  s( Z
                this.id = id;
5 a0 G, Q) ]  s* Y! z        }
# t% s* C& L2 T" j: T9 `! K* I) Q' y: }3 r. p: U
        public void agentStep() {
$ n2 i/ V) q$ w% R                System.out.println(id + ":" + Globals.env.getCurrentTime());
* U8 Z  j  h4 w/ U4 W7 Y. F        }
& t6 ^9 \. H! M( q/ Q2 U- O}. g2 n' U1 C( u5 z' `" [  G
  Z9 A" K4 ^; i9 q' G/ _) d
public class ActionGroupDemo extends SwarmImpl {
6 \" g; s! c1 ~& i5 f8 v+ ?- @2 ?% A        ScheduleImpl schedule;: A$ l8 S* P, R; F
        ActionGroupImpl actionGroup;9 {4 V9 K0 }! I$ Z! i
        ListImpl list;9 @! ?8 ^; e* i" L
        char Id = 'a';3 \8 U/ d: Y! C

( i( H( o# B) q$ b7 z6 g1 X        ActionGroupDemo(Zone aZone) {- t! Y* }2 }1 w" f* ~' J- z' X
                super(aZone);, g" T- S& h$ w7 c  `
                list = new ListImpl(aZone);
* G+ z4 t1 `+ j& z. i+ g5 ^                swarmSetp();9 h$ ]' Q* e& L3 N8 L
                actionGroup = new ActionGroupImpl(aZone);
9 O: Q4 v! e+ k( m! e                schedule = new ScheduleImpl(aZone);8 ?. z9 @2 E* S: R: t
                try {
  p& f3 ]1 S0 S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ v) E) _$ G; [4 W" b4 \                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( e( g5 p+ _  r) ?                        
$ F0 Y% s5 N# M' D  z2 r                        actionGroup.createActionForEach$message(list, agentSel);
7 E3 W  Q+ D! k0 l$ g                        actionGroup.createActionTo$message(this, swarmSel);
, v* l" d* f3 G+ j0 P                        schedule.at$createAction(0, actionGroup);
7 w+ k4 d- H8 J( `# t/ r                        schedule.at$createAction(1, actionGroup);
3 d. |2 O1 L! }0 n                        schedule.at$createAction(2, actionGroup);  o* l( {' M4 @

  C. q- n+ h9 \                } catch (Exception e) {+ S* H, Q+ Z  j
                        e.printStackTrace(System.err);: @. y0 Y$ f, u7 g: |4 s
                        //System.out.println(e);
1 H+ M* W0 Q+ L& w# w. J1 P                        System.exit(1);
: W/ B0 \' D5 K6 \$ h2 m                }' @- \: f7 ]" e% s0 n
+ V; M; y3 W! y$ e, S
8 @( G/ j4 w0 ~  F5 y; c
        }
0 T$ F- X1 ?. v* x" y- R% \  x
! v. W4 L, m/ J2 J0 o! ?3 m8 `        private void swarmSetp() {
% f4 {/ Q; W- T, t3 w                list.addLast(new Agent(Id));# _- x# }7 @( ?: L1 b. K9 u
                Id++;
7 s1 V( w% b. M        }9 r7 i5 u, V6 ~( p& R0 ~- n2 r3 L
& e5 v* g8 I+ B5 T6 F0 D
        public Activity activateIn(Swarm context) {
9 s! H) \6 L! U/ [                super.activateIn(context);
! U! b) Q4 Y8 R/ l( k0 W) a. l" `                schedule.activateIn(this);
" _( M1 W7 \% t& j. d                return getActivity();
- ]4 H' ~+ g0 _5 ?+ v        }7 O, T( d0 D. Y, ?# g0 `4 A- o
1 B/ @0 h. J- N7 w
        public static void main(String[] args) {
  c& B+ I* T5 [7 h3 @5 H0 A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) Q" S2 F6 p/ l9 r$ y& V
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# e% P7 J% u. v, u' n8 @0 \                swarms.buildObjects();/ u8 w3 ^7 S* L# E  |5 |' Y- M
                swarms.buildActions();
& B  C$ u* l9 O4 R8 ^                swarms.activateIn(null).run();
0 q3 ?2 P% ~& Y        }3 t- |4 \2 x$ S9 ?
; N: a7 v) c9 s4 W4 l1 R
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 04:18 , Processed in 0.014411 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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