设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13246|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 E4 F9 V* g2 z* V2 E% Q5 ^

7 r/ F! }9 i5 H1 Q: Y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( a; s3 T6 D  k' j2 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* F& t5 r- S0 a
swarm.SignatureNotFoundException
* _8 V) A# C' {; G# N( @        at swarm.Selector.<init>(Selector.java:76)( M# B) s" j" ?* X0 Z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 b7 A6 B. c/ P$ T8 R
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 |- ?& |0 K$ v  w' S' B7 R8 f& W  V! l: g

/ }) P: a- Q$ H3 c. jimport swarm.objectbase.SwarmImpl;
3 t% Y3 M# x9 j6 h" T0 `/ ]import swarm.objectbase.Swarm;
9 I- k; Z. j/ n1 |% @  D. Dimport swarm.activity.ScheduleImpl;- i/ `5 F, ^# `8 h& K4 w! Q
import swarm.activity.Activity;( \$ ~' V9 W) i. Z) W6 ?9 R
import swarm.activity.ActionGroupImpl;
% C/ J) l4 M. }4 H1 ~1 g) F9 eimport swarm.collections.ListImpl;
# B$ k+ C4 L2 Limport swarm.defobj.Zone;   t5 L( c7 `! O# x9 \
import swarm.Globals;
' ?: b8 p, M+ qimport swarm.Selector;
& X* I( S5 }+ e1 {: d# b0 n5 _import swarm.activity.ActionGroup; $ A! t! ^8 U2 I8 O% o4 o0 n
class Agent {
! ]3 x# R% {3 f5 q' ~  }: y" }0 T        char id;' K3 V, E& y/ s% H8 K: I7 o

+ A3 ^: O/ b$ q        Agent(char id) {
% \5 Q$ r- _% E) O- E: ?/ ?                this.id = id;
8 Z5 a1 D0 T' D! Z        }
  a( b1 v# Z- i& B( g. b! X. Y8 s2 f% u3 W
        public void agentStep() {
" L4 f9 m4 V: l3 W, u! K                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 Q% G# ?7 \0 W! Q        }
( S6 O' ~- `4 n4 q}
2 n; b: e, G/ }, }) @0 j" B- M3 ~- H9 H9 d
public class ActionGroupDemo extends SwarmImpl {
" B% `: W' p% p/ }! k; `% H        ScheduleImpl schedule;6 {, k7 c/ I6 q) Q  _, K$ E
        ActionGroupImpl actionGroup;( l7 M4 b1 n: @4 T8 T
        ListImpl list;
& ^/ |+ A# O% n( y        char Id = 'a';# N: {! I$ Y$ q4 l

+ `5 `, d; p: I) |3 n1 N: w/ r        ActionGroupDemo(Zone aZone) {
( t/ k1 Z; j7 X/ P                super(aZone);
, d6 p/ ^. n, V& \3 T+ Z) n                list = new ListImpl(aZone);
' P; }) U' A3 t                swarmSetp();
) s% Y1 A0 ?, V' J( e                actionGroup = new ActionGroupImpl(aZone);
3 X8 h+ Q' N) u+ W0 L' K                schedule = new ScheduleImpl(aZone);& W2 y; D% c1 ]6 `. A  {  B
                try {2 Z  P: p- [/ K/ _8 F& v' Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ a8 t" \( t9 O) [8 h: v
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) u, n- |( ~( T" B9 x
                        
# D4 h* M5 B4 d6 _1 \5 y; y                        actionGroup.createActionForEach$message(list, agentSel);- r! m  E3 t( S5 w2 I0 B8 m2 R
                        actionGroup.createActionTo$message(this, swarmSel);
% A( D! Z% X) G  b- b' e                        schedule.at$createAction(0, actionGroup);
; ~- O. J2 v9 K8 r# W# A                        schedule.at$createAction(1, actionGroup);( g9 M$ j! U$ h! t3 e
                        schedule.at$createAction(2, actionGroup);2 s8 K  a1 Q$ F  j

7 x' ~! N. k$ T  k# e' M" V4 p                } catch (Exception e) {) @* `. }- F. l8 ~
                        e.printStackTrace(System.err);7 ?; [! z0 B4 k0 Y" p+ E" R) i4 Y
                        //System.out.println(e);
" Y# [5 \; n& g& Z- A                        System.exit(1);
# J* z$ t0 c" X- ?                }6 {6 ^% O7 x6 v0 r

' Y6 J1 q& [! H, M) p& ~7 H% t
) W2 Q7 u; L+ S" x3 {; P) w& c        }# ~- D! X( ^/ H* \7 q2 @; ^

  p# [7 ?' c% b- Y        private void swarmSetp() {
8 K- n, V( i) C                list.addLast(new Agent(Id));$ I; [! r( z6 n- E
                Id++;$ I' K8 M" ^/ Z% p- s9 H
        }+ C1 x4 x- `. G6 k
. P. W, |1 K' X
        public Activity activateIn(Swarm context) {
' j7 f% z7 t; C+ q- W                super.activateIn(context);6 F' |/ b& ~" ]- o) u8 h
                schedule.activateIn(this);
1 M, d1 j+ n+ n, A( B                return getActivity();
' v5 g. ?% i! s        }
3 I+ M3 W& m: D) G' i" U: D! ^% F1 B2 e0 L
        public static void main(String[] args) {' ^' ~# e( j& o
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& |- V8 [& t8 p& S" {( ~# r3 Y, b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* \" C- p2 ~9 w* v* a! c                swarms.buildObjects();  b& G' I! n" R! v% r
                swarms.buildActions();7 [) ?* I, m7 u! `1 m9 O
                swarms.activateIn(null).run();; f1 H- R. V8 [
        }
. |; [% E& y6 Q3 \( F( c6 c' V8 l
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 18:00 , Processed in 0.019888 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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