设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10992|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 k5 k  K" \( r3 ?3 _
: K7 w" i/ ?" ]: Q' ?% Z8 o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' r, ?; _9 G4 @- r2 I8 i* ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  V% F* g8 Y# X; A
swarm.SignatureNotFoundException0 n5 u! w$ X6 _
        at swarm.Selector.<init>(Selector.java:76)
' Y' `  a& S5 I& |6 V3 X        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 Y8 ^/ `/ `8 I, U5 V1 {        at ActionGroupDemo.main(ActionGroupDemo.java:67); U$ x, g+ a3 B* h5 Z

/ f0 V7 K% ]% S% }& g# C
/ R8 S9 d1 @! P6 y" \$ |import swarm.objectbase.SwarmImpl;! i6 m0 [% e, t9 l( G+ i
import swarm.objectbase.Swarm;7 Y6 J( f; x# x0 c8 l& Z- d
import swarm.activity.ScheduleImpl;/ B" b) u! U5 {+ V
import swarm.activity.Activity;
1 J% {% r0 e. ^- O' ]' V" vimport swarm.activity.ActionGroupImpl;/ t* M7 G- }7 i7 |8 ?) p! i
import swarm.collections.ListImpl;
3 q, f% D9 P7 O% w# M  f, bimport swarm.defobj.Zone; * Q+ S: e; h8 C. Y
import swarm.Globals;9 c7 f9 m- @0 V  b/ J; E- |
import swarm.Selector;
  z  Y# B1 G/ M9 Vimport swarm.activity.ActionGroup;
7 x8 h6 Z1 n' Hclass Agent {
7 ^9 m4 G7 E. Q        char id;
7 z  _" T/ u, N2 R( V9 i* Z. g5 H7 H6 C6 o
        Agent(char id) {& J" |% j& o; C0 e: K4 y' Z/ H. P
                this.id = id;" L2 W5 o) _* H3 t
        }
+ _) F/ I* `( z; y3 X' w4 L9 p
        public void agentStep() {
/ O8 e3 U0 h# F5 h) A% R                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 j) C2 t! }- `! Z7 I( Y6 f        }
" m. h# s! J) F* N! R; j- D& J}
# n8 q  ~# p/ C" ~7 B/ C5 b/ E7 @0 j3 `% J
public class ActionGroupDemo extends SwarmImpl {
) d- ~$ O+ s8 G+ K' v- U        ScheduleImpl schedule;
; [9 J- {1 F1 V. b/ u# }; I        ActionGroupImpl actionGroup;! W% F% S+ _/ Y! M
        ListImpl list;
6 g+ I1 `" _4 A0 h        char Id = 'a';. I* `: a; V* {" O, ]
( s! ~- R: W& z# J1 Y
        ActionGroupDemo(Zone aZone) {8 \# Y! h$ @: v5 Z
                super(aZone);$ n1 ^, E: M1 t/ Q; F
                list = new ListImpl(aZone);
( j# ]) @; R: N/ W% R& V                swarmSetp();
0 W7 R' t6 D+ d$ U2 y5 C% @* Z                actionGroup = new ActionGroupImpl(aZone);% H* Z9 u; I. c$ g4 @& r
                schedule = new ScheduleImpl(aZone);: t" A8 G1 n) [  {* X3 ^
                try {
3 T7 H, n% `3 g3 G4 N0 B* {" _/ d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: _" X# _7 @* d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ A" e! `$ [" k8 V! V" E! v# ~
                        
1 V. E- v8 @5 P& V$ q& N7 G                        actionGroup.createActionForEach$message(list, agentSel);2 a# j5 R4 g5 g: m: j2 s
                        actionGroup.createActionTo$message(this, swarmSel);
) B) }# O, J4 \0 z: o                        schedule.at$createAction(0, actionGroup);
0 A/ \/ U$ ?; V- t9 ~' D                        schedule.at$createAction(1, actionGroup);
! q7 W. `; t' Y8 g5 Y7 ?2 E                        schedule.at$createAction(2, actionGroup);# w% `5 O! y# d; M+ D

) y# m1 w# c5 N% G$ T% b7 N+ P                } catch (Exception e) {
2 `+ {0 {, }7 ^3 x$ `0 l                        e.printStackTrace(System.err);
1 {9 A( h7 p* H+ ~                        //System.out.println(e);
" K+ d9 e4 {' z6 S" T3 Y                        System.exit(1);+ j" W% e1 d$ ?7 m( c9 \0 `
                }3 `& o  |9 I8 S0 V. ^
8 A$ ]' h) ]8 T2 `/ [

0 j- {! m5 |" @* J2 S3 W        }9 n9 R) K' o. s( T7 V
* t$ t2 n& E6 h+ O/ a' `; d
        private void swarmSetp() {3 S8 M6 E& ~0 _% W+ I
                list.addLast(new Agent(Id));2 G' g1 j# h8 J9 ]
                Id++;
! J' \. D/ S, L/ L5 K) r5 P) i: M        }
  ?' S7 P" s" L; g. \; R9 |1 j& T2 u: c
        public Activity activateIn(Swarm context) {  @4 |' j: f8 f5 N& ]4 T, D) `0 f
                super.activateIn(context);, F* u5 F. l" Z: Z
                schedule.activateIn(this);* B( d  k+ H1 K6 e
                return getActivity();
/ K+ t' p1 Q6 h. g+ G! ~9 U+ H$ L        }
; @" O3 \/ U$ L- e
1 \; l& ?# b: t        public static void main(String[] args) {1 R8 ?8 L% X  T  e. F$ Z1 ?3 f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, P9 Z  r* c; W2 q9 C" G2 b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& ?7 z: P/ a! v6 Q# I8 d
                swarms.buildObjects();% k0 p# k2 H: y5 U8 }# q; ]. t/ x  ]
                swarms.buildActions();
0 N) S, A, z5 y( ]5 E; X                swarms.activateIn(null).run();- c) p4 e; e# o/ D6 f% B  R, Z: F
        }/ W, o7 ]/ }. Q1 Z1 o2 }  r) \$ X0 @  I  p
5 e; A4 j# v0 h" @3 O% a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-29 18:12 , Processed in 0.020234 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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