设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4759|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& w# R! {/ E# o( l7 U& K  g3 Y2 v4 H1 r+ z: d" |; s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 [; J& T4 |' W+ I* k9 Z" f6 k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; |5 P! i" M- xswarm.SignatureNotFoundException. N& L% }( L' Y
        at swarm.Selector.<init>(Selector.java:76)
8 R( s8 V, {  e9 l( ]" u) I- R* ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 Z# P! q2 Z" G8 R: }. d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)% v' v' M+ N8 r3 Z$ P9 ?* I- Y9 N
" M/ e: m! g2 E

3 e0 R' y8 R! W8 Pimport swarm.objectbase.SwarmImpl;
! ~+ F* Q; f4 r- Pimport swarm.objectbase.Swarm;3 q$ p6 ?* U# v1 @4 @
import swarm.activity.ScheduleImpl;
! Z( G" `# g1 y. nimport swarm.activity.Activity;9 v; H! _" v" s# p
import swarm.activity.ActionGroupImpl;
/ {/ u) \* t8 d- N  y3 E4 S7 Pimport swarm.collections.ListImpl;1 j' e, O4 a- I( h" q, T- i$ x
import swarm.defobj.Zone;
8 y  R' x$ D& y, a4 p, iimport swarm.Globals;* `' ?( @8 [& j' V) Y2 s+ q# l
import swarm.Selector;
0 N7 G, ~& ~8 r' ximport swarm.activity.ActionGroup; - A+ P6 k8 l6 L
class Agent {/ J* a, F: T7 x' Q/ D
        char id;
4 v, R- l/ Y& m' [# y/ s8 |, G$ S8 \0 A
        Agent(char id) {3 j( `' P- b, E* b
                this.id = id;
6 L4 b$ ?; x- A  \9 I2 S9 P        }  f# Z7 Y0 C; R: s% P8 ~" t" T2 a. Z

1 j6 ^% y" n: y        public void agentStep() {
: D2 ]. p! f, w% m4 u2 D, L                System.out.println(id + ":" + Globals.env.getCurrentTime());# S" q/ }6 _/ m, z; ~
        }
, i9 J: G8 B4 m2 ^0 e# W}
4 R  }& t( v$ r( m! v8 n1 ]( ~* \, G1 [: }! i! k/ K! y
public class ActionGroupDemo extends SwarmImpl {  i% G% @' @4 v9 b$ [# L
        ScheduleImpl schedule;
, `; G9 |2 A+ ]' {7 ]6 z/ B  e        ActionGroupImpl actionGroup;! q" h' r1 ~3 p! n, L( B' Q
        ListImpl list;* k, h2 z" P4 \# h- l
        char Id = 'a';5 G" a6 t( ]5 m* _

$ o" L; p( Y: ?# |        ActionGroupDemo(Zone aZone) {
! R" ^7 I* _' b; o, {                super(aZone);
9 w- R4 h& N7 Y                list = new ListImpl(aZone);" r3 T5 E) _$ u9 l  t9 k/ e
                swarmSetp();! B5 Y% r  t9 L, r
                actionGroup = new ActionGroupImpl(aZone);8 \) M% Z0 v  t! ?, N  j
                schedule = new ScheduleImpl(aZone);
2 h# Q; P2 J5 i0 C                try {" |- @1 R2 p4 c5 C' S$ p/ ]) V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 u+ p2 W6 d- h% B
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( n3 |5 e% H/ R/ L, C                        
# O2 t; l8 N0 J; z                        actionGroup.createActionForEach$message(list, agentSel);$ x: E' D3 T, k# k! i. @
                        actionGroup.createActionTo$message(this, swarmSel);  r; I' o: z% S9 j% R, P% H
                        schedule.at$createAction(0, actionGroup);
6 ]% D+ i% H' j1 l4 Y8 f                        schedule.at$createAction(1, actionGroup);
3 ?9 x& K7 |: S- S4 z; `# c+ \                        schedule.at$createAction(2, actionGroup);" Q/ H# ]) ]( `3 k# C
8 T& {- e9 ?: U7 l
                } catch (Exception e) {) Q) S8 {, g/ ~7 C, l2 x' K
                        e.printStackTrace(System.err);0 G8 p! X7 i# S+ K  o1 w  D
                        //System.out.println(e);
2 E" O4 q2 P0 Q1 o                        System.exit(1);
8 Q9 ~" ~% f6 ]                }
- ]2 o' g; b  @( M; d! S# h0 X% e4 M+ @9 ^' b, y1 h
' i4 V0 S( S/ S$ Z8 z1 k. a% `
        }
  a6 ^' u7 a" a# u# ~/ R; o2 W2 ?8 h. q1 o$ V- D, x* n, I
        private void swarmSetp() {
8 H. Q% L( @" r                list.addLast(new Agent(Id));4 {" b- m' z: ^) C
                Id++;
& i6 d& ]5 l' |: Z' s9 u  i: l% z        }
, M' B; Y1 E( p4 G* k: J
/ S* G* }9 \8 e# X% v0 ^% ?        public Activity activateIn(Swarm context) {
3 c# j* K! ~; [, B) B4 R8 G+ |                super.activateIn(context);
1 e5 r- j- e* e# j8 E* P5 H* H8 K                schedule.activateIn(this);
* t+ p, Q/ i4 c* S                return getActivity();  w, m( {& C9 s6 ?+ S. u4 o- L2 a6 l
        }
1 g9 d6 H# V5 x/ Q
+ Z  a* {- v% ~        public static void main(String[] args) {
3 g/ g) ~1 L7 @7 r8 |4 V+ h- n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! o6 G7 N/ G) J$ j1 q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ R- y: E' X, d8 L  H3 @7 ^. _
                swarms.buildObjects();" S( R/ L5 a/ E$ k$ f
                swarms.buildActions();
- F6 Z: {- t6 t' V6 z# l                swarms.activateIn(null).run();
7 E% E# L6 `8 B6 T% _$ H8 a6 W' {        }( k) a! M( \! s+ w
+ Y4 S& T# Q' n) ^9 \+ B
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-10 09:19 , Processed in 0.017703 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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