设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11578|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % i( C/ h) p& s8 A
6 Q5 H6 j2 T! s  G, x  u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# a( @2 t8 A% l' f8 \: t) ^" \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 H" P7 x2 v3 o4 A) G6 v
swarm.SignatureNotFoundException
. v  V/ K4 j3 q0 m, R        at swarm.Selector.<init>(Selector.java:76)3 P( S' l6 {) T. x3 z3 m* s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% {7 l! ]' m. e( m  e        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ L  @& {# _4 u3 T1 j; B" z6 v/ O: h' @+ w

, n9 w" N, x9 L0 y% _* z% \2 fimport swarm.objectbase.SwarmImpl;5 K. O" P: E% {  [  `7 g
import swarm.objectbase.Swarm;
0 v& Z9 o# U% Q0 \2 M: simport swarm.activity.ScheduleImpl;
/ W$ d7 i0 F5 |- G& J- Simport swarm.activity.Activity;! s7 r) [9 |& t$ s0 |- R
import swarm.activity.ActionGroupImpl;9 D, L2 Y/ u) p% ^5 t# J
import swarm.collections.ListImpl;
& X4 }- Y% n0 x+ @2 L3 I$ ]import swarm.defobj.Zone; ) K7 ?. L+ ^  G$ h! Q  h) @
import swarm.Globals;
6 ]2 t1 [2 c/ Kimport swarm.Selector;
+ ?7 k5 V3 b% F/ Aimport swarm.activity.ActionGroup; ! E0 \' u- _2 K# I- b' n. X1 m; _
class Agent {
+ Q5 S& Y6 V! [4 v$ t        char id;2 r( g! f1 |2 q
. C) K. d' w7 d" `8 [$ b7 z
        Agent(char id) {) ]7 g! r/ c$ m- j
                this.id = id;
/ w# J; M1 V4 ]' r; W: D6 h        }9 |& ~; C* [/ H- R- [

. W! G7 `0 v2 h1 w+ q        public void agentStep() {
( ~1 n+ I; R6 ~6 o                System.out.println(id + ":" + Globals.env.getCurrentTime());. Y6 s% `# H* r3 M  l% Q6 ^
        }& z% ~+ ^# g0 K9 w% t% A
}7 S8 S/ _5 Q! L) p- h
4 O" R' U9 l( s8 ~( }
public class ActionGroupDemo extends SwarmImpl {
$ Z6 ~% Y* r& x+ [% u$ h# O( p7 `        ScheduleImpl schedule;
2 L4 t0 f* r) q        ActionGroupImpl actionGroup;
; d1 c# i  _; C( W4 I: j6 X        ListImpl list;. j/ k: V( p% L; B$ m$ Q" W0 w
        char Id = 'a';( T/ w- n7 {( ]+ J
/ f$ R* G  \% e: m* Y0 N9 V* p
        ActionGroupDemo(Zone aZone) {
$ [' o* c0 J* \) x0 _7 s                super(aZone);
' `# i+ T* u7 l# U3 p                list = new ListImpl(aZone);( K3 B. h, @! Q- r% |4 A; y
                swarmSetp();
0 u3 L8 T" Y; Z& }3 s' |2 |% L                actionGroup = new ActionGroupImpl(aZone);
0 V7 A! Y2 e  S  h                schedule = new ScheduleImpl(aZone);) o0 K* L2 `+ K$ t! t; P
                try {
. C8 k3 ~+ I/ I4 d) N. I4 Y- ?: l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ d- e9 G' R- |# t                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' |% L* L) l, n: s9 {4 B: Y                        
: g# y2 m, k, S+ I                        actionGroup.createActionForEach$message(list, agentSel);
' T4 u0 t& Y2 d, w1 R                        actionGroup.createActionTo$message(this, swarmSel);7 f/ ?$ l2 H; E& U  [  J* a6 f
                        schedule.at$createAction(0, actionGroup);0 c+ H$ _; @# o+ g
                        schedule.at$createAction(1, actionGroup);
7 `/ R: v: K0 }$ b' R                        schedule.at$createAction(2, actionGroup);2 w) W6 n' P5 k9 K( k$ a

% [; N5 r" g$ j1 @- _0 q                } catch (Exception e) {
7 @/ @. S, ^2 q+ r                        e.printStackTrace(System.err);
+ y9 U! E  ]3 }6 K! _  P" B                        //System.out.println(e);/ i2 ^+ U+ ?: }- ~; Y) V: ?
                        System.exit(1);0 M( }. r; Z* T+ k: d5 ?4 t
                }
9 o: w, N: g- H- o! D
: `: C9 |+ X7 h; e- Z3 |, S2 _0 k& j% \
        }9 n# l9 D/ }3 J

7 c: K( O. F$ y8 Y        private void swarmSetp() {
- d% H0 U$ p7 s/ a                list.addLast(new Agent(Id));  p7 ?# }6 e9 p2 X# S3 _* i
                Id++;
2 H; O  D& h3 i& g        }
- y! b; I' y; q- g3 \( k) v4 ^( \
  d) n% b( T, z" c0 L# B        public Activity activateIn(Swarm context) {
% O0 [$ E, j3 S' J) [                super.activateIn(context);
4 @3 K2 l; {. T) |7 W6 u                schedule.activateIn(this);: f* F" L% e5 x0 t, s% e
                return getActivity();' ~4 b5 X" q+ y6 K6 c: q8 \" q% N
        }, B! ?# d/ c5 \& t8 B
3 X3 G6 C4 L; V  S7 n7 M0 y% [
        public static void main(String[] args) {
( Q" @8 }6 i$ [) I, b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* m5 o# S8 N" {( A# c9 w7 y" I
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: l; |, E( O' A. S* c) [5 Y; g
                swarms.buildObjects();
& _9 B, {, B/ q- G, D                swarms.buildActions();+ d- z( q! g/ W; h/ E% Y) r8 Y
                swarms.activateIn(null).run();
4 _# B4 D1 x" Z8 X2 c& ~" o        }. a/ f6 k# J6 f4 K8 b8 M

/ d' u) B6 r0 {7 P) B1 g}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-16 06:25 , Processed in 0.013043 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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