设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9808|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! O, |' m8 f3 O: d

5 j" d# `6 m  k# Y- g/ }1 P1 S. q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 d$ P: b$ b8 o' o, ~1 X9 T" v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% v$ ]3 D3 u' L3 Zswarm.SignatureNotFoundException
/ e+ m; ^% V) O- x1 O7 f& z        at swarm.Selector.<init>(Selector.java:76)" U6 _8 P2 e! c5 L5 d- V
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 r" Y! j; B2 ]- l% V) K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- w5 G  W" Y0 s1 L, ?/ x- _1 x% `8 C% e& u, I

  d9 W$ A, J( S2 `  Eimport swarm.objectbase.SwarmImpl;3 u# n; [; _+ P: |4 i- h
import swarm.objectbase.Swarm;
- d- U" m  s8 R1 ?6 ^import swarm.activity.ScheduleImpl;) D1 Y- [2 ]. Y/ Y) b4 N7 l( B
import swarm.activity.Activity;# c% `/ f; G! R5 ?, g  C
import swarm.activity.ActionGroupImpl;
* i2 {1 [6 y5 M% k' n4 d/ f) o! Iimport swarm.collections.ListImpl;- Q/ a; y) K' z6 D
import swarm.defobj.Zone; 2 D7 U2 O' Y6 s; \! v
import swarm.Globals;
0 ^& k( B  x$ Eimport swarm.Selector;( n4 I% p% k+ e) S$ e
import swarm.activity.ActionGroup; ' y/ E1 W% B" Z, N
class Agent {
2 u! P+ y3 D1 H$ b" A7 O        char id;- h; h. m# b. R# M1 F+ m3 j! ^( d' S
$ P7 m$ D7 m5 a* c, I+ Q
        Agent(char id) {7 @( |/ s- J& ~- k
                this.id = id;
$ t6 h( @& C7 Q' `) e$ `        }' ~& |* f! X# r  t& J* N
8 x7 C% Q& M$ s+ H* y
        public void agentStep() {; R( h9 B' e4 k
                System.out.println(id + ":" + Globals.env.getCurrentTime());# p/ E" g- s1 g) U' `
        }
+ C* G( }, z2 j  Y5 \2 {) A}
9 e# a9 V. Y0 b! Q9 _4 y/ A4 f; ^/ B2 ?+ G  a& \+ I( a& ~
public class ActionGroupDemo extends SwarmImpl {" y/ n) Y$ i$ N- s$ z# @
        ScheduleImpl schedule;+ v. ]* F5 x  N1 X/ c! @7 x7 |
        ActionGroupImpl actionGroup;
% L) O7 B6 g3 d        ListImpl list;
, e2 Z, B* y5 F3 v        char Id = 'a';; V, q. ^8 R. F% y

8 l3 N2 h/ g5 A1 L, x: \        ActionGroupDemo(Zone aZone) {
# @; m) j' I; q; ?                super(aZone);
0 Q& U1 w- P3 V, T$ a) ]1 d) k                list = new ListImpl(aZone);  |* z' @: s  ?$ K
                swarmSetp();+ g8 D$ F! v' z# C9 s6 j
                actionGroup = new ActionGroupImpl(aZone);
4 s& n( b  ?8 X3 X/ \                schedule = new ScheduleImpl(aZone);1 S( d/ I9 b7 x4 {1 L
                try {# \0 L9 H1 z% ^" E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 R9 R! @  k8 V) w$ h6 O: U
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 R% G! F- `3 x" w+ M* o2 i& O
                        # `7 T' q. d8 @' B* {
                        actionGroup.createActionForEach$message(list, agentSel);! y9 V8 X6 @7 x" ^2 b) Y
                        actionGroup.createActionTo$message(this, swarmSel);5 T0 M) k/ ]! ^, ?; z$ Y6 q1 ]
                        schedule.at$createAction(0, actionGroup);) z6 ^1 m: T9 {
                        schedule.at$createAction(1, actionGroup);
- k) s9 v5 _7 B2 u                        schedule.at$createAction(2, actionGroup);1 V% a! F& i4 W. X& I6 b
0 g/ V' e9 ^5 h/ y" c+ D+ q
                } catch (Exception e) {
- t* q7 V' M; y: M3 ^                        e.printStackTrace(System.err);( {& Z( u  _6 ]- H; {
                        //System.out.println(e);
% I, m( P2 k- U; _                        System.exit(1);, }, b& W6 d" f) ]
                }, p/ {, z6 j8 z9 S) X

2 D% A) Q) D" I2 n' |6 Y" V1 H7 O7 g% ]+ H7 {6 p
        }8 c! ?# E, O% N8 W; L% R# F$ t

. d4 V- t( M5 S. d$ x$ V        private void swarmSetp() {( z# {' I+ o6 W6 K
                list.addLast(new Agent(Id));- i' f4 E6 a/ m; @) v8 f: t- Z: [
                Id++;
- P% V" z* |; y5 l9 f2 j( h, c) q        }
+ J$ }  ~& p7 E' D# G1 T! u
, }2 n6 ?7 n' J. l$ Z5 q; y# v; h        public Activity activateIn(Swarm context) {
8 b! g8 B5 _: {  ~, [$ [; ~* A                super.activateIn(context);- U5 R; V1 r) P" s2 y, @; [
                schedule.activateIn(this);0 m1 B: A. j; G& F
                return getActivity();! o% Y' {; f# D
        }
5 K$ g/ {/ d2 ?4 v- c6 K# ?
& Z' [) f& z8 C% P( g        public static void main(String[] args) {9 U0 `4 W0 g  j  ]) J, u* B+ f/ m
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  w2 p# X! m  i* t" m( G, `: P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( Y- V/ _8 g- K7 y1 C$ D                swarms.buildObjects();
) q' T  O& I9 s                swarms.buildActions();- w2 M8 N! ^8 d4 ^' t' O
                swarms.activateIn(null).run();
  y% m+ \3 A1 g% {( ^        }
6 M, E3 y' i6 I
6 j: g! T. B- O& q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-23 17:19 , Processed in 1.972529 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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