设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12195|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 a- {- J1 N" F  a$ }" [. `
- c  `. O& J  s
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ @: c0 N- o0 M  W, ]: D0 W% ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 Z+ R1 d; q* R% M0 H: Cswarm.SignatureNotFoundException
# {- Y9 ]- P8 N7 D! i% R        at swarm.Selector.<init>(Selector.java:76)
* Q( M. c. @- A- B& N! e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ @4 S7 H6 O5 s% A1 S
        at ActionGroupDemo.main(ActionGroupDemo.java:67); z4 Y9 h' A! {! k6 A" j# Q" T
, d0 ?; b: l1 y6 T' h
# f; N/ w& w1 Z$ X% U4 C5 e
import swarm.objectbase.SwarmImpl;
1 k4 p  a6 j+ {) Timport swarm.objectbase.Swarm;$ o* s% J. i' O7 v
import swarm.activity.ScheduleImpl;6 b/ M! ?1 L: w, A
import swarm.activity.Activity;
8 H2 G0 c4 L: {7 himport swarm.activity.ActionGroupImpl;# v1 S2 h; o1 _* N
import swarm.collections.ListImpl;
7 Q9 p( C. ]" @' o; i) Fimport swarm.defobj.Zone;
3 _4 h; b: j7 S% t% himport swarm.Globals;
/ m) w  a% `. [4 b9 K9 g# i" `* t$ F7 ]import swarm.Selector;
1 |% F% \0 v, ^0 q. rimport swarm.activity.ActionGroup; 5 [: \+ F. y8 g4 Y' D% W
class Agent {
7 ~( n; u+ w1 w7 \        char id;
8 O  ]: E( o+ h& i
6 g$ S3 h4 i" m( N1 I        Agent(char id) {6 b7 j9 q5 b, e7 B+ Z: x7 m* j
                this.id = id;7 K6 O! Q( t8 x! N; R
        }
6 ]1 |+ P  S7 a$ L# S7 m
' B! ?5 [. k! S  E7 \1 U( k6 r        public void agentStep() {
& f- Z% U7 j# v: M0 A3 k                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 t" d) L8 A0 i5 {        }
% T: R8 ~& a8 {2 |/ R2 r}7 ~3 r3 X7 C2 m3 [( s
# h! m- G  \2 ^
public class ActionGroupDemo extends SwarmImpl {
' Y2 e3 r3 z/ U6 ?3 _4 r        ScheduleImpl schedule;
$ u5 H1 N4 ^6 f0 C        ActionGroupImpl actionGroup;& _/ f& w  @3 y$ j8 Q& M
        ListImpl list;
" ?5 c; V+ X- G& E        char Id = 'a';7 c" c+ c; `. L/ {8 l0 K
7 ~& ?% x# x+ X! `
        ActionGroupDemo(Zone aZone) {
' T- \* g7 V% ~5 h% u                super(aZone);
/ `/ w- I$ i. m% V! i                list = new ListImpl(aZone);7 _- e( Y& m8 U2 G9 x3 g& e
                swarmSetp();
, ~7 j$ g+ K2 Q! O                actionGroup = new ActionGroupImpl(aZone);
# A+ W+ ~& P4 t3 w( p                schedule = new ScheduleImpl(aZone);
. U, t4 J- D( e: S                try {0 ?) B) ~3 t! v" K3 h, @) K
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& ^7 v) c$ }& Q; W3 G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: M6 C4 f9 d' y+ W  D" t                        : ~  i1 J$ R  p6 ?' D/ _2 v
                        actionGroup.createActionForEach$message(list, agentSel);' T, x1 }6 q/ M$ }; Y/ T2 q
                        actionGroup.createActionTo$message(this, swarmSel);
! V5 D- E) t5 h& [- {                        schedule.at$createAction(0, actionGroup);% X. v! g- G3 p( ^* T. b1 ~+ \, w
                        schedule.at$createAction(1, actionGroup);5 V" c  Q) [  Q. z9 K, ]% l- v
                        schedule.at$createAction(2, actionGroup);
; q7 X7 G6 ~' s6 A$ J- T( G
: U- K% K; V0 N! P9 D! w$ V                } catch (Exception e) {
4 Q, z+ I  P( v                        e.printStackTrace(System.err);5 U3 z' J; @# |" Y# f
                        //System.out.println(e);+ }1 e* Z0 L& T" A7 p: n( y
                        System.exit(1);
5 D- j- g8 c- x* ^# W                }5 ?' k* o5 m1 h; m4 D0 ~2 o
' w8 v  y# p) v2 ~5 d; U3 a3 j. t

0 P9 S& S7 n5 {, |, R        }8 S' I! N- `& e
+ Q+ b* S0 z; s/ }+ g- z
        private void swarmSetp() {
; n: Q% h- S  O$ C# U4 ~                list.addLast(new Agent(Id));
- T4 b1 `3 F, b9 X0 ?, E8 ~; S                Id++;
% q- H4 h% Q( [7 \        }; U3 ~2 {5 \7 ]' d. d, O! ?% Z

+ l" U7 c! {+ d2 q, X& Z: s        public Activity activateIn(Swarm context) {
: B6 d2 N- J  Y& y. w/ a' z0 E% d                super.activateIn(context);4 U  G+ W. d3 v' C
                schedule.activateIn(this);/ w) c2 ~9 c  s/ {
                return getActivity();, t0 o& e- R' }
        }
! ?8 w' ]- m4 f+ S% U6 }
+ |( @. I0 U1 `! D# q" v        public static void main(String[] args) {1 i/ C6 `5 o* r1 j' |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 x. a: v8 Z" e: w* M3 V# O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; ?. C/ \# j) q: p# }0 a" p
                swarms.buildObjects();
2 ]4 X: z! R2 @- F( M                swarms.buildActions();. |, x0 K8 Q# m# `1 ^
                swarms.activateIn(null).run();
( Q9 Q3 |! X5 Q9 }, L        }
) m$ f, q) o; K4 \, L7 Y5 p
# c# j, ~, a' w5 a. V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-1 20:34 , Processed in 0.019509 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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