设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13572|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 E8 ^! Z9 {# K6 _+ l; K# a% W

" d8 H- G: O$ U" M- @8 i( ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( w6 m: }' H- _9 ?, n6 e9 _! {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! W) q9 j8 {2 K7 f3 m# U% B
swarm.SignatureNotFoundException
- ?( W, B% y4 o& p8 @* u; c! b        at swarm.Selector.<init>(Selector.java:76)+ O2 U# R$ z$ K/ T
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 ]; E  q; `0 e* Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; h, g2 }/ J2 j! P1 t, s7 ?6 e5 q0 y/ e! l4 r* M7 Q( y
, Q4 i/ k  s6 A; r( v
import swarm.objectbase.SwarmImpl;) q. T9 r" k- [4 {
import swarm.objectbase.Swarm;) p4 P6 e8 z9 y+ h9 c
import swarm.activity.ScheduleImpl;
2 U' ~9 G) B' Kimport swarm.activity.Activity;/ d# ^/ Q3 j' N
import swarm.activity.ActionGroupImpl;" F% u3 T, f* m- e
import swarm.collections.ListImpl;
- h1 i" v1 R. \6 d( S# Limport swarm.defobj.Zone;
9 K2 Y+ P+ X2 e5 P7 v* Iimport swarm.Globals;4 l3 O- @' C" L4 ^& D9 ^) G
import swarm.Selector;
6 {. q& ?* W; Ximport swarm.activity.ActionGroup;
1 Z$ ?6 J; ~2 ?( ?' i$ p7 y; ~class Agent {
/ a2 R' H0 a0 i; x+ C. b( S        char id;
$ a6 q$ y" T; p1 G1 A9 H2 T  Z) P6 P
        Agent(char id) {8 E& l) B! N7 d  m- t  z
                this.id = id;
  B; Y8 j* D1 |- D# Q5 ^8 Z        }
& V1 p3 [/ `5 D7 D4 k1 {8 [) k6 ^% w0 T. a6 q7 Q
        public void agentStep() {+ f( y, d9 H: y! J% m8 u. _  O/ c
                System.out.println(id + ":" + Globals.env.getCurrentTime());& o. |  f- l! S! H4 v
        }
1 }  r9 M6 `& w6 N' {, I}4 B0 R* K% q& L# b: b) ?9 u
+ j4 q* _1 k; k- Y6 c  C4 H4 P  |# W  l
public class ActionGroupDemo extends SwarmImpl {* {( W1 O  K; i" E; j3 j
        ScheduleImpl schedule;5 m4 _0 K( S  ^/ M# y
        ActionGroupImpl actionGroup;
6 b- w. K$ D* U$ o# `  }% J        ListImpl list;: _# C' u* ?* c6 P' P7 B7 _
        char Id = 'a';" V. Y, C9 c# z5 Y& M" x0 ?% c/ j7 u- b
* B4 f( ]# D5 C6 f( D
        ActionGroupDemo(Zone aZone) {
7 u  i5 q- A9 ^8 w                super(aZone);( A! D% o1 A( K; f4 S" ^
                list = new ListImpl(aZone);  ~1 D7 O/ k1 d/ ?
                swarmSetp();1 C: @7 E& c, g/ ]/ p3 @
                actionGroup = new ActionGroupImpl(aZone);1 S2 b' V3 r/ h% i$ o1 r
                schedule = new ScheduleImpl(aZone);
3 v3 O' ^" }( ^: H$ \9 t                try {
( L9 e! E4 b% J" B: E5 y- ~0 X4 o7 z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; u& H$ e7 A* a7 ~9 Z( A2 ^
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. z& c3 |* F" y8 P% y                        ' _4 f$ }1 e4 o( c, S  q, s
                        actionGroup.createActionForEach$message(list, agentSel);
1 C, P3 G# B, @8 C$ \                        actionGroup.createActionTo$message(this, swarmSel);
$ b- D9 L% t. Q4 _& O' N) I2 _/ k                        schedule.at$createAction(0, actionGroup);
; @( C3 I. O6 c* f: a5 I                        schedule.at$createAction(1, actionGroup);
/ R9 U4 v6 d. H! l* x/ c                        schedule.at$createAction(2, actionGroup);! A# e' V' H* r6 t8 U- l: _
3 Z" H6 Q( U* `
                } catch (Exception e) {2 A9 V1 H# Z. M# a# ~
                        e.printStackTrace(System.err);
% [8 B1 c+ g3 p  \; X4 z+ ?                        //System.out.println(e);
4 C9 O. Z8 G" }9 a  }! h  F( F                        System.exit(1);( ]/ }1 u5 [7 T% K% v
                }
$ C" x: m: h( l& o
; k& h, d* I4 }2 j, C/ @1 s1 m' W7 j3 L# y
        }
, d/ f+ |; \1 s- x: ^% R. I* V0 X! ^% ?
        private void swarmSetp() {
* f; s7 D" I8 b0 Y                list.addLast(new Agent(Id));# S( j0 {; b! f! ^3 k; V2 Y% B/ w8 `: _
                Id++;% k7 |* d6 r. x7 {: ^/ t) l/ q
        }
& r% `/ t$ X* ?. b; ~
" t- H( o2 e5 l        public Activity activateIn(Swarm context) {
" N# a* p3 l2 P                super.activateIn(context);
2 @, J* ]% t" V3 G                schedule.activateIn(this);
/ U' ?; i. T  ]  _# l  ]                return getActivity();
( M4 r) |$ O0 d5 U, K        }
' k% k! x6 g/ I7 _6 q3 p; U, D
1 x! Z0 d9 |+ w3 n  |5 H% n        public static void main(String[] args) {
2 a0 q6 o9 q  z% Y$ Q. z: a# D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- V' X+ u/ o* S! ?/ D' G
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( s" m/ k- @# ^1 v
                swarms.buildObjects();
5 v3 V/ l: P6 w$ B7 `% _                swarms.buildActions();
- V6 V2 l+ v. g8 H1 F8 x# H+ l                swarms.activateIn(null).run();
. g9 y9 U# P, U2 t7 a" @        }
5 s/ {: u7 U- s; F- S- W+ o% Y6 {: T8 C% w4 _# @, r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-11 12:55 , Processed in 0.016386 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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