设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9128|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 n! e8 d  ~& `1 Q( Q; f& E/ e0 f9 W7 z9 D1 R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! U! ^3 H7 s# _# Z, C以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" R5 W8 ^' `& fswarm.SignatureNotFoundException
2 |8 ?. ~) O  x5 @        at swarm.Selector.<init>(Selector.java:76)
. y0 r4 O7 g5 m- b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 D$ p$ S% G% m3 {! G# m3 n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 _5 N$ w% e: X3 }. \: `4 l
4 Y+ ^3 x: d8 u. m# h+ `

. `9 `& t( \4 y- M. @import swarm.objectbase.SwarmImpl;
- B9 ?0 P1 d7 H2 F/ dimport swarm.objectbase.Swarm;
) a/ \: M5 r& z5 i! k$ s: simport swarm.activity.ScheduleImpl;
/ ]" s1 O+ ~3 ~! o: _( K+ m% ~2 Cimport swarm.activity.Activity;
9 R; z7 O% y( L  ~, Jimport swarm.activity.ActionGroupImpl;: {) J- `/ E& M( ?
import swarm.collections.ListImpl;  Z5 A5 F( @3 H; E: r
import swarm.defobj.Zone; 2 K0 ]: p' T- t  X$ F; t+ {  B
import swarm.Globals;- _* j% C1 j0 t# t( D$ C
import swarm.Selector;6 y7 J9 d0 i/ Y! G
import swarm.activity.ActionGroup;
$ m* n, x6 M/ e# L0 }! z1 Cclass Agent {
$ p( r! ~% n; ?: L1 l        char id;1 y) U, u5 d  ^! S; w+ Z$ ~

. {4 ]) r: E" V( p% x        Agent(char id) {5 X, b, e3 }5 K
                this.id = id;
& m* [  L0 e- Z" }/ r        }0 u: _- f2 D$ w$ ^, j

! r) k; l% U: U! R# @8 |( I) T! w        public void agentStep() {0 i7 T& X! Y$ v9 \/ v
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# j& g0 ]+ P% e( O        }1 Q  f/ O; h( H9 E& t
}2 E1 ^. k% V9 u6 ?" o
3 i) J' K3 x3 F3 j# i/ u* K
public class ActionGroupDemo extends SwarmImpl {
( P" N# k3 L& y5 k' [; }        ScheduleImpl schedule;. F7 V& ~1 h" l' g. M
        ActionGroupImpl actionGroup;; ~4 a- [5 B+ g# d# `
        ListImpl list;
# t1 m) J$ A6 ~" e" _        char Id = 'a';8 Y6 P9 i5 h+ s6 x9 k5 K2 l& Y
2 h3 A4 R& x9 r
        ActionGroupDemo(Zone aZone) {
: _, N0 x$ R9 T& _3 L( `                super(aZone);5 o: S8 y/ j4 {' q; M6 v6 W
                list = new ListImpl(aZone);
9 [% O5 D- D2 r& I- H                swarmSetp();+ o/ k; Z* M& w) v) A6 h) k5 V
                actionGroup = new ActionGroupImpl(aZone);
! z, r, s4 H) E, b$ @                schedule = new ScheduleImpl(aZone);1 @/ T- A8 v4 N
                try {
9 d0 j# S9 \- s) \: ]- O( d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; c* v3 A% L+ _" g% |7 g                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, t* Q& _2 b. y
                        
, M$ [4 x9 |* m3 w: p                        actionGroup.createActionForEach$message(list, agentSel);
* d7 X3 r0 @- g                        actionGroup.createActionTo$message(this, swarmSel);
$ ~+ Q: W: h- }3 v- c                        schedule.at$createAction(0, actionGroup);
* J# G: T7 N5 ^  F: j                        schedule.at$createAction(1, actionGroup);. `5 ?% `8 P: w/ z# w
                        schedule.at$createAction(2, actionGroup);' T- e5 `* x' J# R# X, R! W, ]

. W+ |$ h% ]9 q: w! ~7 G  H                } catch (Exception e) {0 p4 }3 q. `0 H1 [
                        e.printStackTrace(System.err);9 h3 {# @* D: d* Q) A# u
                        //System.out.println(e);7 _% D3 q- S8 P) W# P* s
                        System.exit(1);
6 ^: F3 X' E& v                }
  w) I2 V% T0 _' n9 F% S7 p7 r
! C( \  ?( h" a7 y' d
7 U& b  J: C& T- P1 f: `3 Y( X        }9 _" [3 A, Z. N/ ~" B

" \: a* |+ o$ a+ W8 T1 t/ [        private void swarmSetp() {4 v" e- z2 O3 J
                list.addLast(new Agent(Id));
( _8 F- U/ R* r  {4 i, t9 ^2 p                Id++;
# m& k# [% w6 P) I: c: Z        }8 Z- R0 @/ K3 x3 t

2 v8 _7 N6 |8 y% V9 B6 Z        public Activity activateIn(Swarm context) {( F2 d3 n9 K; w$ L9 a" y
                super.activateIn(context);! H2 t- M+ y" X7 p; E- Y
                schedule.activateIn(this);* u) P8 d# B! }9 Q
                return getActivity();, P3 u$ W! u7 q! m) s% D; D) G
        }
/ N: I' N" A) }" a6 b& n* t6 W7 O% b  C6 n
        public static void main(String[] args) {+ s" O& {/ D/ O) o- d. n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& \8 \4 u4 i; A7 |5 Y6 @; P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 X1 c+ A9 T7 ^$ g
                swarms.buildObjects();8 A; l$ _& Y% T1 @( ]4 N/ b; E
                swarms.buildActions();! w# e: e* Y$ T( Y5 N
                swarms.activateIn(null).run();
. Y0 r  k: `2 D        }$ w! X, \: S$ f! A, g# I7 v% d& N
6 J1 W# c6 b( l& [0 q* S
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 06:59 , Processed in 0.013966 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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