设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8300|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 a7 \! i  L1 L. b% M1 n

& }2 G/ \- i1 S* r, B" s; k/ V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; g7 X( P) h* y3 g2 g* U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., _7 g) I6 g/ E9 y3 l4 U# ]
swarm.SignatureNotFoundException
& x2 J2 H% y$ v: g# i* y        at swarm.Selector.<init>(Selector.java:76)
  q* [! K+ A1 z2 c1 d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ i! M  f# n. R" V! \$ F0 A        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! h7 c% P& O" V( x$ G5 z" P( X+ a! ~$ G

! R6 D- b; E; N, jimport swarm.objectbase.SwarmImpl;
8 u8 D9 u; Y9 l' zimport swarm.objectbase.Swarm;
  |% R6 ?# D+ B) z- c# J4 \) F# p6 B$ jimport swarm.activity.ScheduleImpl;1 Y( y2 M6 f2 r$ G; ]/ ]
import swarm.activity.Activity;
1 e4 X, q3 @, U6 a8 G1 l% pimport swarm.activity.ActionGroupImpl;- g0 S0 }2 C* z
import swarm.collections.ListImpl;
' ?% T: V/ F. V$ Oimport swarm.defobj.Zone;
6 K: `2 o8 I* M  {import swarm.Globals;) W! R4 s% j/ T) j
import swarm.Selector;2 p& _3 m9 B4 q  x
import swarm.activity.ActionGroup; . C- Z/ `1 B9 s% F8 U5 ^7 ~% B
class Agent {
% w* V! O* a, R4 U+ ]        char id;
6 x1 ^- v% g# _. z7 j
: e1 |; i9 {0 ]* G        Agent(char id) {
6 W+ N1 D) A3 f! j- ^  b6 h                this.id = id;
- s3 ^& ]  D, P0 I: K4 w        }
1 P) I% o5 ?! u1 W, V& q7 o  u; M* k
  \  k5 g- i+ c* S; T6 L! R        public void agentStep() {
$ h8 M1 w1 \; P; K- Y3 v                System.out.println(id + ":" + Globals.env.getCurrentTime());
# f, I$ f" v, f4 P        }
: N* t/ [! F. D1 U}$ A1 Z8 p& h6 k. s: ^+ h; @

) O+ L$ a- V9 ~# ~# ]public class ActionGroupDemo extends SwarmImpl {) j8 I3 b% y$ n
        ScheduleImpl schedule;
( G; F" O" W! L' x6 N. J        ActionGroupImpl actionGroup;7 H) E! o. {+ \
        ListImpl list;
; Q$ Q# ]( y) X2 ?; R/ P        char Id = 'a';3 ?) s% J3 A) f; m
9 \+ B' O& s+ u7 Z7 c9 p
        ActionGroupDemo(Zone aZone) {
7 r; h5 P1 Q& f; b4 \                super(aZone);
" f1 a' p, E+ K: {% s                list = new ListImpl(aZone);& D6 T% R' G. Z3 ?
                swarmSetp();. M. v2 j& e2 _9 d
                actionGroup = new ActionGroupImpl(aZone);/ c9 e& G+ L8 ~5 C# }
                schedule = new ScheduleImpl(aZone);3 P$ _) ]! X" v9 v& B
                try {' U% m+ e3 U3 V. M8 y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( w' ~. A5 ^0 Y7 h' m( r. Q. c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ A) A2 ?. J0 b6 b! H: h, E9 R
                        ! S$ `% k6 L0 ]& F6 G
                        actionGroup.createActionForEach$message(list, agentSel);
9 v4 [* `4 v* k                        actionGroup.createActionTo$message(this, swarmSel);
3 Z) b0 \$ N2 S                        schedule.at$createAction(0, actionGroup);
' w: F. C' f1 v( r  }                        schedule.at$createAction(1, actionGroup);
# B0 T  `, Q/ Z/ G: ^6 ]                        schedule.at$createAction(2, actionGroup);
5 D+ J$ m4 P8 s  P1 |" A! E1 I2 M6 \# I# t' F% G+ u
                } catch (Exception e) {: i$ {# B5 f* V( P0 a" p
                        e.printStackTrace(System.err);
+ S+ n8 `8 D- e' Y0 |. g                        //System.out.println(e);
; U; S" k% L- ?6 `& Z6 D                        System.exit(1);
$ d7 X& f+ ^# @, P, `, F# u5 v9 z$ {                }9 @/ @0 G" ^" P0 H& m2 k

2 Q4 a( |' x4 ]8 ^* k) |+ ^5 r4 w
4 v4 B* ?1 o) Q7 R5 W  v        }
$ E- H3 u' g" ?2 Q  y5 t; [9 t( O9 J9 B! u
        private void swarmSetp() {
7 o  c% S/ g7 u1 C3 j; w: j$ {8 I0 `                list.addLast(new Agent(Id));
9 E5 C) o9 v& _7 E8 f                Id++;8 U+ f1 D% [2 w; K
        }  [) z6 ~: s7 C' v: Z0 k, K

/ K9 G; O1 R8 A2 T# g: T' j        public Activity activateIn(Swarm context) {
6 l& E. A: l. S2 `                super.activateIn(context);- U+ F4 G; \& ~2 I
                schedule.activateIn(this);
, X- {. _( v5 p1 \                return getActivity();+ a; N3 x% `! N6 {
        }
" M" q9 G2 s& _/ Q' O1 g$ C/ r: R0 H1 h) Y- ~) a' d4 `
        public static void main(String[] args) {
, z3 ^; G/ L* P: L) L& z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 D# T3 r, r: _. e# B/ @
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: G7 w. u6 y& J; t. z                swarms.buildObjects();
! e$ f7 {& p/ q# b0 a" N1 \/ O                swarms.buildActions();4 B' ^- b6 s/ H; p9 a! m& N+ x& d
                swarms.activateIn(null).run();
4 B$ }# q% j  A0 e        }8 G0 T5 k+ D9 M& K

- R, \5 `7 u" {$ l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-7 04:16 , Processed in 0.018005 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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