设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9435|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) N# d) g9 M/ ]; B7 _6 b/ Z4 n
; L0 x" q  C6 p% _/ n0 B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 f6 V8 N5 i# s4 _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( H( b4 ^9 {2 i4 x: _9 K
swarm.SignatureNotFoundException
1 S' @6 U3 q4 t/ h        at swarm.Selector.<init>(Selector.java:76)
* {& Z: q% ]& R% t) e  X        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- l4 G# d7 v( [: g! A# o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( r: p- q5 `* Y2 e% q( {( Y" r% N) ~: H" J- U0 M) |
, M* Z/ T/ e8 G, p7 Q
import swarm.objectbase.SwarmImpl;# X& i: F5 N- D* u3 _; e
import swarm.objectbase.Swarm;
; d1 P( t2 V! Z9 g  Z/ Eimport swarm.activity.ScheduleImpl;
0 m8 M" n8 e( k5 e7 K* ]import swarm.activity.Activity;
# A5 j* a" A/ n4 t8 ^4 \import swarm.activity.ActionGroupImpl;
& @2 v, d1 D% H9 o& @3 Kimport swarm.collections.ListImpl;- R& E6 Y! {7 O* Y( S. A
import swarm.defobj.Zone;
; O3 t9 a! i  T' \" @, N0 mimport swarm.Globals;
6 C: L' e1 N; ?1 ~& |: i# pimport swarm.Selector;
/ U! r( [$ p* N/ |* C- o! t8 U/ iimport swarm.activity.ActionGroup;
# \& O! f7 T1 H8 e! O- M. iclass Agent {
5 s0 ?7 H) V; I; k: a. G        char id;
3 ~4 Q5 w+ C) P* i: X0 b
+ `: z" J& s3 G' S1 i8 j( d5 u0 f        Agent(char id) {4 \7 T& |' ~0 l8 f" ?) M, q8 ^
                this.id = id;" G' c+ k+ k& O0 D& Z# u
        }/ o9 L; F5 p4 B2 n4 ?! b+ I

- \3 H- k# c; Q% b( Q+ _- E        public void agentStep() {8 ?& m# m1 u, @* Z# A
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ w. H0 x9 c" J* _1 Z" k) N* c        }- B6 h/ c1 N6 s. F
}! `# z& a7 m* f' Q
$ ?5 D/ Z6 C/ J# w8 r8 K
public class ActionGroupDemo extends SwarmImpl {8 J; R+ }* D5 ^$ y& f5 A0 ]
        ScheduleImpl schedule;
5 w5 l; R$ Z# B        ActionGroupImpl actionGroup;; z/ P( {6 D' }$ e( D
        ListImpl list;8 _+ ^0 z* Y, E+ G& j
        char Id = 'a';
/ y! q. V' V4 K2 v6 j: t/ D4 B( {2 Y& s( w4 \$ `: S
        ActionGroupDemo(Zone aZone) {5 P# ?" e' q& }3 f
                super(aZone);
3 R! s& j& \' t* [                list = new ListImpl(aZone);
2 m; z( |4 r7 j2 F$ x6 E, R2 W                swarmSetp();+ E+ m" l& q, |- v4 U( H
                actionGroup = new ActionGroupImpl(aZone);
* e$ A$ a0 {2 s' U9 H                schedule = new ScheduleImpl(aZone);5 b  w+ Y) D6 O" t+ F/ R1 Q/ ?
                try {
& {" {2 W6 [' U9 s8 k* \                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 o' P! t; [2 X' J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 Q4 v* W/ k  N; x                        
; o0 i3 j) d3 y- D% G( b) S  `                        actionGroup.createActionForEach$message(list, agentSel);( @* G1 {  N5 w1 t. G0 k- W
                        actionGroup.createActionTo$message(this, swarmSel);  R+ T  P3 A9 |; |1 g1 T9 v- P: t
                        schedule.at$createAction(0, actionGroup);/ U1 z, u8 ^' v, l, ^1 P" Z
                        schedule.at$createAction(1, actionGroup);) e: F- V) }0 J! o7 P! E6 A
                        schedule.at$createAction(2, actionGroup);+ s; k0 E% f; i: |' L2 b; x( b8 ]

6 Z) m4 \, Z  ]. p3 T                } catch (Exception e) {
1 s: u( w* l3 P1 j0 M                        e.printStackTrace(System.err);$ H; n. q- u, _: P) P+ y
                        //System.out.println(e);
1 [& ~* {, I1 c7 C4 v                        System.exit(1);' F2 F4 I7 v3 c# {3 T3 ?. v2 d
                }
! o- u/ R/ k6 R, t+ H
+ e$ r9 h! z6 ?: T' s# y" l, z; E/ J  j% l
        }% c7 g# r  X8 Q3 y' n

7 X) Y4 L) x% p. ^0 e  O  M, h! Q1 I        private void swarmSetp() {! H& Z- s  q. J8 O( b6 z
                list.addLast(new Agent(Id));0 i4 o# ^, a& ]  r5 u; x
                Id++;
1 U- H" o* d% [0 \        }
! i3 q' P: x: w) M# e" W; [, X9 R( o+ m
        public Activity activateIn(Swarm context) {
. {  a$ h5 W7 E+ \, C) f: K8 K                super.activateIn(context);
4 |" s3 ?+ n% N- ]                schedule.activateIn(this);
) X0 r3 C) l8 P; `9 O0 I+ T                return getActivity();
" K- N) p% F' G7 c5 Z        }
  n: y! I9 R: g( Y& T9 i( N7 \8 ^* L4 k- b& E
        public static void main(String[] args) {
  @5 M: c8 g2 ~' n: s9 l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 \& i' ]* y9 p# ?3 C1 L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 {) L  `# v9 g( R4 J
                swarms.buildObjects();. P7 Y  E/ C: }# x+ Q% O9 o' T
                swarms.buildActions();
8 l) Q( @( n! Y/ o+ u                swarms.activateIn(null).run();
+ a6 N, c1 h) v8 K+ a        }
3 t, b2 z' n& j3 c* l1 @% p& X; p4 E. @  O) g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-12 11:54 , Processed in 0.018203 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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