设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13032|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* i4 [- ]1 S. C  w" |: H- c9 `- ~! K! V/ [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' H+ ^# V! i( R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: ~: P; z( ]! v0 T' _
swarm.SignatureNotFoundException( ~/ ^9 n. W4 J: U3 q, ?1 T& z3 ]
        at swarm.Selector.<init>(Selector.java:76)
4 @, M$ H5 D# u( A, H        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' r' h5 ~4 J. j4 M# y, i) p& D
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* X& G+ U  j6 t0 C5 T/ M0 C% f! w, s2 A" `

- [+ ?. ]0 ~% j5 o/ Oimport swarm.objectbase.SwarmImpl;
+ H: U$ Q- Q" ]  L) G+ cimport swarm.objectbase.Swarm;- ?' T# ]1 u6 P. J# L
import swarm.activity.ScheduleImpl;$ K( r8 E( s" Y/ e3 w" q
import swarm.activity.Activity;
( Q  J$ O2 ~, ~: ~' S- J: {import swarm.activity.ActionGroupImpl;
: K4 n4 a- Z/ C5 F$ p: V6 X, bimport swarm.collections.ListImpl;0 Q( ^$ T  D: L! o- z
import swarm.defobj.Zone; 3 F* d# T1 T4 w7 Q" Y
import swarm.Globals;
! d" F; j4 T  p, [, n# {import swarm.Selector;
+ n* ^5 e: O3 G" N4 ^2 Bimport swarm.activity.ActionGroup; 5 i0 A) n0 A, r& V
class Agent {
3 l1 P5 X/ f3 G# ^' ^# G        char id;& e* k! O; I4 G
& g0 r& J: G# V- z, f9 u
        Agent(char id) {/ N$ o# |4 p/ m8 N5 d. t  J
                this.id = id;! C  P- Y; q) y! D( ]( {
        }
2 }5 s( C8 B4 m1 M( B) G1 N: [6 i1 D, s/ n
        public void agentStep() {% J0 z) L( O1 A( y: y
                System.out.println(id + ":" + Globals.env.getCurrentTime());0 `5 ?% n: c7 v
        }
, v0 `7 S0 @2 ~# H+ C}
6 ^' j/ Y4 h2 Z- `2 j  m
- ~9 F% ~% c$ S6 n+ {, }public class ActionGroupDemo extends SwarmImpl {
+ G/ p" @$ x0 ^        ScheduleImpl schedule;
% g1 U: l4 z9 [3 v- o' o5 r        ActionGroupImpl actionGroup;
! a5 F5 i7 Y! Q        ListImpl list;
2 Y% `! l4 q( M+ ?1 s. `        char Id = 'a';. G( Z- g1 j% J

  ?4 N7 q+ n2 z% \        ActionGroupDemo(Zone aZone) {' @2 j$ O) Y+ b3 d+ W# E
                super(aZone);
  k& K1 |8 v* Q, Z% X# L                list = new ListImpl(aZone);2 L' |: ?$ p: {3 j5 r5 i- N  N
                swarmSetp();
/ R7 f* e% I3 l                actionGroup = new ActionGroupImpl(aZone);
8 n: ?( X. B; O1 z  l0 U                schedule = new ScheduleImpl(aZone);
3 O6 \$ M% p; t8 Q( W8 |1 W                try {
; H" j- h+ q) S' h6 ]6 j& t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 J: z; x% u  E5 ~( v8 U
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: n: z7 w( y7 t# \) D( J% c                        
1 D; @$ [1 D5 S# F( y  S7 }" B                        actionGroup.createActionForEach$message(list, agentSel);
% `" F" D  w  D! W                        actionGroup.createActionTo$message(this, swarmSel);
0 {; ]4 N% W" C1 N/ Z2 J9 O                        schedule.at$createAction(0, actionGroup);8 U+ j, [) ^2 d
                        schedule.at$createAction(1, actionGroup);( K( O, q3 {  M+ K# @
                        schedule.at$createAction(2, actionGroup);
, M9 \( X7 T8 N8 j" e$ k( V, Y7 f; |6 V" s
                } catch (Exception e) {
* O. p: _+ W4 {1 s" B: o1 o                        e.printStackTrace(System.err);
. g+ J$ j2 b6 ]! [, o) j0 h                        //System.out.println(e);
1 X8 t, y# O& K- d$ u7 b                        System.exit(1);# \/ t& j8 e3 j0 n2 j1 F
                }" @% n5 Q( v+ x' M  P1 U

* o: Q" S" L  d/ C$ h2 m1 N8 E5 h! |. B. R; W' L/ m* I# ?; b; K
        }9 O% A$ j9 V6 O4 {0 y7 t
$ G' L+ }$ V' E) w# x
        private void swarmSetp() {1 W: h; _- ^) f; O/ T% w- s( M8 D5 F
                list.addLast(new Agent(Id));
  A1 V2 P# `2 G                Id++;
/ F6 z6 y4 n. F8 b8 L9 t  V8 p        }( C3 o6 U7 Y0 L, S) Z# x/ s2 ]

  _+ N) O6 r" \6 e        public Activity activateIn(Swarm context) {3 {  S2 ^) _& G! g
                super.activateIn(context);
! D; X; L" [5 n8 f6 g                schedule.activateIn(this);9 |- u7 `' e' L& L1 d' E  s
                return getActivity();
6 g; t( J0 E3 Z/ H+ R2 g( D+ c        }
* G- v" u0 c6 X, R* q3 j$ I6 z6 ]- q& @! `
        public static void main(String[] args) {
. \# d8 x4 |: I# a; I6 N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% i' z7 }9 y0 t. S. o2 P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ a( Z: t0 {* B, p  V  F
                swarms.buildObjects();2 Z& \. [; G) {0 u8 [
                swarms.buildActions();
2 ^; e1 H3 j7 ]$ n                swarms.activateIn(null).run();
  I4 [/ Y) E: t/ S# r& a( R        }
0 y- V" n9 t- _* P3 }
# j5 M- b: H. U* c# c. c, V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-26 13:01 , Processed in 0.022087 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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