设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9993|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . J: T; j: v- |
, X; ^- t1 z* R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# f5 A  P' r' S3 j+ p. f# j/ i; c2 k& G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- q( ~; W) ^; S- ?% H$ }% Y& ~
swarm.SignatureNotFoundException
  r- G4 h6 w3 f3 |+ b$ ~        at swarm.Selector.<init>(Selector.java:76)1 `- B3 d( ?: r& w' ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 E: ~/ c& S  H        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 q) |  t: E' Q+ ^" g. _' t! {! E8 {  ?) M7 Q
! e( n. v0 P- g2 z3 {3 }6 d
import swarm.objectbase.SwarmImpl;) H* R) R8 ]( Q$ o1 R/ A6 L, _
import swarm.objectbase.Swarm;
4 W& d! ~) ^9 E6 p3 V  @import swarm.activity.ScheduleImpl;
' T( q8 Y' W- Fimport swarm.activity.Activity;' L% Y6 D1 h- d8 _2 i, s. ~7 }
import swarm.activity.ActionGroupImpl;
8 @- e0 W/ ^  p4 [2 ~7 m# u- L) Simport swarm.collections.ListImpl;( S2 m+ a7 o/ E% A1 `& u
import swarm.defobj.Zone;
0 X7 o$ J" }! ?. F3 ]+ d2 Cimport swarm.Globals;0 D) E4 T% M' c. S. N& i) q$ D$ `
import swarm.Selector;' N; @! Q+ ~0 E6 `0 `, I4 ?
import swarm.activity.ActionGroup;
1 I" Y+ k# k% L" qclass Agent {
5 s" R6 X! ^+ K# q( _3 F        char id;
7 T. s2 u4 M3 r: X4 }. i0 k* g! B
/ {7 K" F8 s" ^; ?( R$ v% E7 @  v        Agent(char id) {
, X. P# K7 [) Y7 t1 @. W& E2 N                this.id = id;  I0 T& E% L0 ]- k! h7 ^
        }
) r( j3 M$ }1 R. I* }9 P
- v+ ?/ @+ v6 E3 O) }& `9 g* x6 E        public void agentStep() {  V* M1 O+ \1 [
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% ^" Z9 j& a' O1 v( g        }$ _( D1 H% {% M) h) A- ?
}3 J2 i$ q" q- k% I- u; a
6 r6 p2 d) H/ {
public class ActionGroupDemo extends SwarmImpl {
  V4 g& y) [: ]" ?3 Z2 W        ScheduleImpl schedule;
6 k5 ^' ]# M2 a/ N8 q' Z# H        ActionGroupImpl actionGroup;+ {; c3 D* l: W' S2 g6 D
        ListImpl list;% j8 m3 K0 x- j8 O7 N0 y
        char Id = 'a';* l$ {" h& K; @3 r: r' w6 z1 x

  j3 |2 x" d/ E, X: u0 u: n        ActionGroupDemo(Zone aZone) {5 S" T- E3 [* A
                super(aZone);: C. ]' {$ h, b$ \- O/ `& p
                list = new ListImpl(aZone);) o  a7 n. S. B
                swarmSetp();
, \# u7 X; T* Y( K                actionGroup = new ActionGroupImpl(aZone);" Q) l8 p" W5 i4 p" _5 ~
                schedule = new ScheduleImpl(aZone);" a  q4 V& E& _  C2 n6 W5 k" @, h% b
                try {8 P4 a* q; E8 a; P9 `
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- k8 O0 }! A$ c  H# D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; b+ g: t, H/ `2 e                        
/ T5 G. y2 J; M$ U2 C                        actionGroup.createActionForEach$message(list, agentSel);7 }, N1 |' q" r: ?' l
                        actionGroup.createActionTo$message(this, swarmSel);
8 ~. N0 C4 J" A9 H                        schedule.at$createAction(0, actionGroup);
8 r& }3 [& u, k% ~9 p                        schedule.at$createAction(1, actionGroup);
2 }$ `/ F5 t8 c( d; U$ q                        schedule.at$createAction(2, actionGroup);; \/ M) U2 K) R# ^% _. F2 ~2 t
. E3 j7 f) y! Z4 [2 Q
                } catch (Exception e) {
# }# s3 c6 X+ t. S9 G! {9 Q                        e.printStackTrace(System.err);
$ S4 W8 ^- O, Y3 T: K6 u+ F                        //System.out.println(e);
( _" b( X2 R" _( Z* K                        System.exit(1);2 W# \6 V+ M9 n  r  c4 {
                }
2 ]& X3 o! Q) `2 W' V, P. A4 r2 k* y
* v( X+ ?' M! y6 t7 I$ t( R
        }" X: e6 y2 f6 K# k
! ]$ q  ?5 U( m( S; C+ g' S
        private void swarmSetp() {( S' P4 i7 U" R" |- G
                list.addLast(new Agent(Id));
0 q2 p: ^8 N+ _6 G4 u                Id++;
+ S1 [. n% u- g        }
: @" c' g) \; F* _0 i
6 B. o$ k& R  y8 N6 Y, |: I' C, L. e        public Activity activateIn(Swarm context) {
. F/ o( a: k' L) Y/ |5 W' V3 D                super.activateIn(context);3 E* Y; s) A! F) E% ?$ ^
                schedule.activateIn(this);8 v1 s) Y- f& P3 }5 @
                return getActivity();
- f/ z: K2 v  _5 U  i9 ?. ]& q        }
  r# C* A5 y: u4 l' r( ?3 {5 y8 Q, S0 T
        public static void main(String[] args) {
4 P+ b* W. v* Z1 z! n  b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 h1 Z- C9 r: E$ Z' q% O/ r# A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& ^' T1 h2 e. f2 h                swarms.buildObjects();
8 u& ]4 l+ p/ ~3 @$ a5 B# U$ L                swarms.buildActions();
; u% P2 J4 O8 r8 E) I8 _                swarms.activateIn(null).run();- `% C! M9 h4 m7 q( p6 H; O2 }
        }
" X" R( M0 |" a' n3 x  J* D& x& p. P4 h' G" s3 h  F# ]
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-30 21:47 , Processed in 0.015019 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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