设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6724|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # l, S! L# E% p9 u3 H

/ m) t8 A7 V  c. I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  E. ?- Z' ]5 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." ]+ b9 l6 O: m  g- L
swarm.SignatureNotFoundException
4 u# I; c; y- o7 u3 L        at swarm.Selector.<init>(Selector.java:76)  z) }& Z) D  k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 W! L6 ^4 R' j  `# C7 j" J        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 ^7 h$ `, U6 u

  {( d# L5 V- W. M7 l7 a, Q: O: s* l  A8 Y" B( t) S1 I4 u
import swarm.objectbase.SwarmImpl;( U! ]# e# {' t7 a
import swarm.objectbase.Swarm;
- `$ F- ^9 r$ ^+ E# [import swarm.activity.ScheduleImpl;
! o% u8 Z8 ]9 Q. I  l5 u- W% Limport swarm.activity.Activity;7 C3 S% F4 M" K- ?
import swarm.activity.ActionGroupImpl;
* V* N# t9 ~. O% L% V, l! R; D5 kimport swarm.collections.ListImpl;2 X7 M: v! z8 |% Z
import swarm.defobj.Zone;
; ?) U9 }/ n  e$ C. \: w5 u, nimport swarm.Globals;
* w% m, @+ l9 c( K2 Eimport swarm.Selector;
! L4 n6 [2 A3 c& z: |$ P' R+ ], yimport swarm.activity.ActionGroup; : l" d+ B7 Y: I* ~! g0 R- b. u3 N
class Agent {
8 T, V0 P. ?9 ?8 K        char id;
' A# E7 g2 E6 V4 A8 H6 z8 Q0 I! H3 n7 i; J
        Agent(char id) {
! w, u+ m4 X% Z, K                this.id = id;
- f7 j6 m8 ?6 S3 b9 e& r+ p        }/ }/ }: z1 c. S# E, q
6 q# ]% {4 ^: P1 _/ U- h% t% M
        public void agentStep() {
( V& B! _  ~8 d3 i                System.out.println(id + ":" + Globals.env.getCurrentTime());6 I$ n4 Q& ^3 t* A6 W- h
        }: Z/ X, y  n9 X( [$ v2 Z7 v
}
& e( e7 E. f4 Z* @* ?# [3 r4 W) k) w6 v" I  l2 F; ^
public class ActionGroupDemo extends SwarmImpl {
; Y- ~6 }6 F: v# \8 i* C        ScheduleImpl schedule;+ h% R& x/ k8 G6 q* j- x8 n
        ActionGroupImpl actionGroup;1 g% ~* x; I/ f, w0 p
        ListImpl list;0 g' L+ S2 Q$ J- U5 P
        char Id = 'a';* u/ }! k1 x2 _# J7 I: R! m
, R- F$ y/ ^6 j0 ^( C5 @# ?
        ActionGroupDemo(Zone aZone) {
6 N; F8 l" s! \* o) J% r0 F                super(aZone);* x; E# x7 c! I) t% _3 {3 U
                list = new ListImpl(aZone);: ?9 U4 \$ s9 u" P+ @& s
                swarmSetp();7 L7 M0 t6 V) |+ ^4 Z: }
                actionGroup = new ActionGroupImpl(aZone);
) {1 P! z/ ~8 _: h: f5 F                schedule = new ScheduleImpl(aZone);/ ~( y/ T4 `% z7 g0 ~0 H. t
                try {9 y9 s+ P: I1 C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. m$ h# `  T, d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 l' }0 C% U! l$ X. \$ ^
                        3 [2 T8 m) X% p; U8 `/ H" o
                        actionGroup.createActionForEach$message(list, agentSel);( O7 n! L1 N; w% w" r3 a
                        actionGroup.createActionTo$message(this, swarmSel);, w* Z+ i' ~/ V! g9 @1 |; ]
                        schedule.at$createAction(0, actionGroup);2 |% c& `/ e% V* R' X. K) H" D
                        schedule.at$createAction(1, actionGroup);# g0 z8 R, O. P% w. e; E5 |7 E  |, C
                        schedule.at$createAction(2, actionGroup);9 |7 @& Q) Q$ S+ a

0 |  k( X7 u9 }' H! j1 p9 S/ V! p                } catch (Exception e) {
3 ]  b) R* e- K# G/ d$ |                        e.printStackTrace(System.err);' w- K( D- `" k3 ^
                        //System.out.println(e);$ _/ h6 Y  C9 g& J- N' y- G$ a
                        System.exit(1);
3 b: N$ F9 s2 Y' |) S                }
- {/ V) e0 b/ v; L8 ?
3 @, L  _$ {( w! u, H/ d7 }2 [
8 m' a. s+ Q! B$ y        }% Q# V1 q, i7 O( D- D6 m

1 ~. S& Y+ ~! J9 m3 I+ A3 z4 P        private void swarmSetp() {
5 v- \9 h$ f/ u  C                list.addLast(new Agent(Id));
& I. k# [$ E/ X9 j6 V+ h0 ^5 V9 R                Id++;
2 O  a4 Q" g: C        }
+ u$ T2 {- ?% E6 Z& t* O+ d$ R  V; W4 I- t$ l* C( f
        public Activity activateIn(Swarm context) {, K+ o: Y+ `/ h. a; \
                super.activateIn(context);
; J" Y  E" `+ U- }4 \- i0 o                schedule.activateIn(this);# ?/ y* B, `: J5 c4 A/ F- J
                return getActivity();
7 d2 `; w. u4 h/ b% m        }) _$ @7 [5 M, k. w9 p
; z2 d2 _1 b8 p. a& C
        public static void main(String[] args) {
' D0 w6 A/ x" h1 s% i' F                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 q$ g: O6 k8 `5 Q0 {
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* R4 \/ @; _* b: m' M
                swarms.buildObjects();
' d- p# f( H% a' m4 ^                swarms.buildActions();
4 C  l: O  i8 f                swarms.activateIn(null).run();0 y" T6 r5 H. c
        }
4 z/ q. m- V% Z1 Q& A( j
0 l; w' U! t& h( J0 p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-7 05:55 , Processed in 0.017353 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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