设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4732|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + K0 |# a. A- V+ R" I6 q

8 W" {! y- ]! X本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- P6 ~9 h4 Z, f以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! X8 W& I8 l, O
swarm.SignatureNotFoundException
; G6 n/ L1 m. E# K        at swarm.Selector.<init>(Selector.java:76)
- H+ Y+ o# p4 P1 \0 d6 p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 }& H0 {/ A! c1 k7 E5 ~. g        at ActionGroupDemo.main(ActionGroupDemo.java:67), l/ q* ?) A9 e- ?* v

: M8 ?: d, A! y) x% j0 t: w  J. r/ d) s) Q) o& ?1 _
import swarm.objectbase.SwarmImpl;
/ J; z8 ~. N) u' cimport swarm.objectbase.Swarm;, O1 m9 ^* d7 N$ I) s! A
import swarm.activity.ScheduleImpl;
. }) `* S; \7 U  A  m# ?9 V! W% j7 rimport swarm.activity.Activity;
# \; w3 ?- ^* J8 D3 }import swarm.activity.ActionGroupImpl;" y  ^: y9 c9 n3 a
import swarm.collections.ListImpl;( E& K7 l2 x) C$ B( k
import swarm.defobj.Zone; ; t/ K, ^; {6 g* a
import swarm.Globals;
/ O! B" f; ^. ^$ ]" B9 r4 D9 F* Yimport swarm.Selector;
6 ]# v8 |) V  ^# }8 }1 _! fimport swarm.activity.ActionGroup; 2 G2 m+ @, o! w3 h* t; x& k& U
class Agent {
1 @  e* u1 Y8 s* o  q1 k        char id;# S8 [0 o+ q9 K/ b+ a

9 s: D3 ~: O& q5 O/ Z+ s        Agent(char id) {
) c5 C9 `9 v2 k                this.id = id;# B$ F4 b$ W: j
        }
  `6 ]3 Q; j2 u) m7 R0 a+ S' [
        public void agentStep() {1 ?! n9 ]& Q6 B% \! C5 i
                System.out.println(id + ":" + Globals.env.getCurrentTime());
  w' C% j$ y2 M        }
) ~( P3 d5 a; C# b5 G}
2 g  q. J6 V2 n: C4 B2 d" E0 Y7 H% Y3 d: M
public class ActionGroupDemo extends SwarmImpl {
. l( @1 `( S5 M2 s        ScheduleImpl schedule;
. O  _; R4 Y! m4 I! U2 T  X        ActionGroupImpl actionGroup;
# d/ P; L7 s$ K6 @        ListImpl list;% i& |: ]& d. J
        char Id = 'a';
; g/ j0 a( S  l7 y- z: s! ?
$ ^7 G/ J$ @3 I! X2 A* o: G4 y6 j/ S        ActionGroupDemo(Zone aZone) {
) R! z4 r/ K; O$ ^/ v" b                super(aZone);0 e7 Q. n+ B7 u% ?% Q$ o
                list = new ListImpl(aZone);1 Y& ?/ u5 t7 Y2 E1 X6 g- u
                swarmSetp();4 M. t; @( j) L* N
                actionGroup = new ActionGroupImpl(aZone);5 q% V$ L. @3 V% ~1 ~: m
                schedule = new ScheduleImpl(aZone);6 Y! }9 |- N. D
                try {% Z% T& r& F5 @
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" V% i8 ^+ ~! T+ R* x- P9 N( B, Y; r& S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* t5 x1 ~' O- t# U/ n& H                        
8 e7 j- _2 b0 q9 \9 h& ~                        actionGroup.createActionForEach$message(list, agentSel);  o5 j+ z( n8 m/ V  @! h7 \' B
                        actionGroup.createActionTo$message(this, swarmSel);7 y! ?, W5 o9 U7 D# m
                        schedule.at$createAction(0, actionGroup);9 m2 a: \: _+ G& p
                        schedule.at$createAction(1, actionGroup);
/ G* ]5 y$ l, L                        schedule.at$createAction(2, actionGroup);! J6 h6 q. J7 l& D( x

0 ^) ]; p6 J$ {# G! m                } catch (Exception e) {2 ~0 l1 v1 A  ?
                        e.printStackTrace(System.err);. [6 d( M: @/ Z6 h  x1 [7 y5 C
                        //System.out.println(e);2 O! m9 p, @; B+ A9 d
                        System.exit(1);: O0 R6 q/ W$ V/ ?7 V* E' H; I
                }
- \4 V; l6 B$ x: `! D
; w. H- J$ @3 d' D/ s2 z9 ?% M% u0 }- U: x+ N% N
        }
3 n6 c# P% P  x0 H! R8 s2 N8 U) j0 T; Y" g- F+ p
        private void swarmSetp() {: P7 U& ~  h2 E  p4 U9 D( U
                list.addLast(new Agent(Id));( w2 b3 [; U: p0 k* n9 ~
                Id++;& H- k0 d. [: d. l+ p3 S
        }% t9 e" v$ L0 G) u. ]8 g

- E6 Q  `8 ~8 ~" T5 U" [+ i& m* _8 o        public Activity activateIn(Swarm context) {' V  k+ o1 U3 k$ k1 J% D
                super.activateIn(context);. J. m( s5 Q0 w2 l. j# B; Q
                schedule.activateIn(this);
( j/ Q* l. x- D) T; K3 W                return getActivity();
1 I! D, r* ]+ B6 i* D        }
) ^' U4 j4 F8 k. b9 P4 P% `/ ^% D; c
        public static void main(String[] args) {
4 x9 w: q& u( ~% q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ n. a+ H4 x; R. A& M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) J5 j8 u  O/ ?+ A) a/ S* J
                swarms.buildObjects();7 t( h0 f" H7 `, `3 [
                swarms.buildActions();
# D3 d: H0 K* x  c5 o5 y                swarms.activateIn(null).run();
3 I- R5 t3 b* [+ V3 i        }7 j- y# q! j% V3 L7 m2 n
6 G) E1 x% U& ]
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-9 07:04 , Processed in 0.017457 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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