设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8641|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! `  N) t7 g! W: L4 J+ e( G" Q8 h& _

7 L: e' F/ Q( Z$ A3 {本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 N- v& i9 I8 _8 ^3 K% V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 ?2 o$ {  h! a, T6 ~8 i
swarm.SignatureNotFoundException# m6 ?& k3 P+ T
        at swarm.Selector.<init>(Selector.java:76)5 ]$ V/ p6 i1 T! m& {8 h( F: o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 E3 z4 x$ n) J( k        at ActionGroupDemo.main(ActionGroupDemo.java:67)# @: s& N& M1 K. _

4 I4 K9 B3 ^$ p  T+ ?
! k+ G3 o( ^7 Y7 H9 W. Vimport swarm.objectbase.SwarmImpl;
8 e5 l' E6 e+ P" d4 x6 c5 bimport swarm.objectbase.Swarm;8 }* t# F' G. V" h7 I' W8 c" @9 {
import swarm.activity.ScheduleImpl;  x  ]8 F: G- P2 o" A; Y
import swarm.activity.Activity;
0 o8 O6 ]) O6 K# ?1 X; Wimport swarm.activity.ActionGroupImpl;
7 ^, s+ T* @/ L1 D# ]import swarm.collections.ListImpl;
0 B) m; o$ _, c0 T+ [+ f) N: Dimport swarm.defobj.Zone; 5 h$ `& u# \! ?* l  X3 G) ~5 n
import swarm.Globals;  \7 s( {3 z+ \' Q) l. a2 L5 @' ?
import swarm.Selector;
: ^$ j  ^8 @, _8 E- F/ Ximport swarm.activity.ActionGroup; ) G/ D/ V7 F* r/ ]
class Agent {7 q. [* a# ^/ U2 a7 G' S
        char id;6 a: g+ S% ]1 }3 Z

5 {0 u5 q# ^! `; a6 d% e3 H; H        Agent(char id) {" ?* x" p( p+ a8 Z  k
                this.id = id;
0 Y) J; A# M% ~$ _5 {        }! A2 x/ y5 D1 D' X5 @
$ V" l- |6 G0 [& e, T# J
        public void agentStep() {$ q* v3 _+ U. \4 \, \, n3 n
                System.out.println(id + ":" + Globals.env.getCurrentTime());& \; C. D! F3 d2 U. j5 d
        }2 ~/ r+ B6 }$ R5 N' t+ _6 r- C0 z
}
! F; {2 z5 \0 {2 f4 U: |. E2 X4 H
, o% V) L% o& H/ R( J( Tpublic class ActionGroupDemo extends SwarmImpl {6 Q: ^8 k& Q# V1 R
        ScheduleImpl schedule;! S6 Y5 b  d" _8 ^
        ActionGroupImpl actionGroup;
1 p! m4 ?3 ?$ T        ListImpl list;5 f% M0 l% F5 V5 `3 I, C3 e
        char Id = 'a';
" f+ r) P, G6 G. z& o) H  M" q0 ^' d* T6 t7 M
        ActionGroupDemo(Zone aZone) {
9 Q' _/ {& O6 X, _* i                super(aZone);- t# W/ D# v7 N6 O
                list = new ListImpl(aZone);1 e: c" D" j8 x* A2 p; K
                swarmSetp();) o6 K* f! g* I& y1 |
                actionGroup = new ActionGroupImpl(aZone);+ l8 U# [1 `2 i4 X" v: K
                schedule = new ScheduleImpl(aZone);
1 L, ^6 R8 [- m+ T& N9 B  P                try {9 s/ h' m5 F$ O$ P
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. @: F6 R: }* r6 c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. g* f# J* `9 {# H                        $ f) e& y! B0 e% ?" b
                        actionGroup.createActionForEach$message(list, agentSel);
7 [& ^# [  c  X/ Y1 K                        actionGroup.createActionTo$message(this, swarmSel);+ i7 `( l+ E% K7 ]: b4 w9 R
                        schedule.at$createAction(0, actionGroup);
" h4 Y, D, i1 J6 u                        schedule.at$createAction(1, actionGroup);
" c4 y- d8 j4 s3 {                        schedule.at$createAction(2, actionGroup);7 x3 j) @9 \0 Y2 R
5 n8 W) A& I- w9 F" n" K( L
                } catch (Exception e) {1 \) t* Z4 E  y1 C8 z7 [& x
                        e.printStackTrace(System.err);
! a# l+ {) D) j( |# r% a                        //System.out.println(e);  k; _! l: r) a) C
                        System.exit(1);: H. m# K  m8 }1 s
                }  q$ W! A$ ?1 Y) G& i/ `
, ]! J" |& H/ \2 W
$ b6 ]) A( F$ S
        }
! S1 W+ K9 o! Z% {6 R6 I! A/ K  E6 P1 E% X$ B; e8 W# i1 g6 g
        private void swarmSetp() {
% O& x; i0 |) i0 O. T2 f                list.addLast(new Agent(Id));
6 x7 e9 N" Z9 x* @" ^: t                Id++;
$ O4 Q; I& L; I2 ~- T        }
8 Y- ^0 l7 ~/ o9 [6 a; O2 a
# g# ~( q/ J3 L# A6 C) F3 N        public Activity activateIn(Swarm context) {( @+ L7 \- X* c# r0 ]3 A
                super.activateIn(context);1 _; Z; M/ X3 c) b9 U; ^  t5 S
                schedule.activateIn(this);$ C1 A! k- X4 X. T$ I) R5 q( k) ?1 W
                return getActivity();3 i! h6 ?: ]2 @6 D5 b' I
        }; M: B$ O' r* Z9 o+ R
& [! E" z  G" `8 p' `" g
        public static void main(String[] args) {( _  y7 t7 @9 V' c( e& o: s3 K
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ U/ g8 _5 _! T  `! D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 f, @: k) B3 d1 D                swarms.buildObjects();
. q7 m4 i# O7 u1 |' t1 U5 H                swarms.buildActions();) _: x4 B5 a# m
                swarms.activateIn(null).run();
1 K- u0 t5 z' d  [        }
2 c2 Q# e6 j, ?) w  s  V
. t* y6 V) c$ D; V: @: u2 o$ t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-18 13:04 , Processed in 0.015968 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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