设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8517|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- R  P. [: A, P2 g/ I/ j& m% a; a
! _7 z4 R/ d+ }! H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 s' Z# @5 I$ Q+ t! b4 ?7 O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# u# j9 i- S" u4 j  zswarm.SignatureNotFoundException' |6 i; F. m  Z9 J0 u$ e
        at swarm.Selector.<init>(Selector.java:76)# Y% u- z  V, ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& |" F: X/ Q' e& @3 W        at ActionGroupDemo.main(ActionGroupDemo.java:67)  r/ V  E8 y% }9 d$ R/ l, T

, B4 {' Q' ]8 [1 f
; V! j7 z: f, B; A* vimport swarm.objectbase.SwarmImpl;
& D8 t. o( V% K4 ]- }import swarm.objectbase.Swarm;/ G1 i6 u5 m3 k* N
import swarm.activity.ScheduleImpl;
2 ?# b4 Z; K) f6 m! N9 ^) qimport swarm.activity.Activity;
0 K) l5 Q$ F- j1 fimport swarm.activity.ActionGroupImpl;
& o* A: I" I$ N9 `$ Wimport swarm.collections.ListImpl;
2 \, P; v1 G3 I8 C0 u& t5 E: mimport swarm.defobj.Zone;
* d4 @" r# b, y0 Jimport swarm.Globals;
/ D* R5 \1 z6 K5 c0 t! W+ gimport swarm.Selector;
: e; a4 k2 k" |" U8 Eimport swarm.activity.ActionGroup; ) Y2 }8 b# h9 G) R
class Agent {
/ ?" P6 y, W- c7 K% u1 E6 d        char id;
1 R* y6 F# p2 V$ k) C8 D8 H* P
! l/ Y3 n. G! o7 s+ \2 G        Agent(char id) {5 Q2 O5 N% a3 v9 r
                this.id = id;
+ @2 E! f( Y6 H) J8 k; p        }  D  [$ F2 n1 r3 n/ I% p4 h9 ?! E2 J

3 r  e% A6 ]2 p. b0 S        public void agentStep() {
. ]8 g0 Z" V2 M& s" {5 M! v                System.out.println(id + ":" + Globals.env.getCurrentTime());3 k, E- G) o6 E4 k$ [( M
        }
/ J5 L: N7 }' k, U}/ N" m, ]3 H; o: s5 u1 _/ m

& O/ E: v8 a. v0 ^- d1 Mpublic class ActionGroupDemo extends SwarmImpl {
5 G" r5 V- [) j* z! C  Y        ScheduleImpl schedule;
6 l- Y% M6 G# C- i( K9 I3 h        ActionGroupImpl actionGroup;
7 a- ]& u4 x, R: i8 r' V        ListImpl list;
4 J% s' W' Z) _  J3 d: n/ J        char Id = 'a';+ d0 R, \2 g5 s, r/ j) p4 i
# `( S7 c2 y; [. b' _
        ActionGroupDemo(Zone aZone) {/ w9 V( x7 z  v
                super(aZone);
% X5 x9 \1 z9 p+ H  A: E2 D. {                list = new ListImpl(aZone);: s, N: m/ W! X7 H9 M# k' _0 L
                swarmSetp();
- z5 a& Z5 p1 P9 q                actionGroup = new ActionGroupImpl(aZone);
0 b' A' Z( v2 A/ X" f' e+ @5 y5 {                schedule = new ScheduleImpl(aZone);
$ |* L5 W9 u5 `                try {, t3 ~% T4 R# N# n1 v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 `) ?: P% v, n# O/ d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% K5 [9 l4 Z( L                        4 R0 `; o) r7 h0 O6 I
                        actionGroup.createActionForEach$message(list, agentSel);+ {6 O; i& A  g( V7 g8 U% B
                        actionGroup.createActionTo$message(this, swarmSel);) k% n0 V# K1 s" T( x! L
                        schedule.at$createAction(0, actionGroup);; {0 O& m! u4 o. v+ S- v$ }% ]
                        schedule.at$createAction(1, actionGroup);
: {- k7 c5 ?+ w! }9 k0 Z0 ^2 ?                        schedule.at$createAction(2, actionGroup);2 U; v5 B: j0 w

6 O4 M! y8 _  X- @  P                } catch (Exception e) {
, l/ _- }: ?4 I) S                        e.printStackTrace(System.err);
6 h1 M" u3 l' I  Q$ I                        //System.out.println(e);" Y  c+ L# H. O( m% o( @( o
                        System.exit(1);% o. s0 D* H3 d3 m
                }
. B6 B# h1 C; V0 c! K1 t7 ]0 m3 o  B' B

+ r1 ^# ^2 |" c0 y7 L" \        }
! J- S6 R  a! [/ ]0 m5 }
/ x6 ]# {/ Y- V        private void swarmSetp() {, i- q' B: D% R3 x) X6 n/ o2 u- \
                list.addLast(new Agent(Id));6 u! [- ], [5 r5 m- |+ ~# U
                Id++;: O1 O" }, Z' N4 C  o5 a  h7 O- U
        }6 P5 V, @8 n( n& _% h
& ~1 H% ?7 h2 D$ }  `$ w; Z
        public Activity activateIn(Swarm context) {. h& o- s& ^- S8 U
                super.activateIn(context);
# C$ b/ I5 D; H6 H& p/ v: M                schedule.activateIn(this);3 z5 u. k+ N3 g' D/ N- a' U% B8 H
                return getActivity();7 B+ _( O" M0 P: q+ P1 P
        }
! Y* D; K; [: l, b( V% e3 Z: y. v, s# U! P6 g
        public static void main(String[] args) {
+ K# n" u( C2 K; s/ i7 D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" }: C1 i- l' P! q7 R* x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" t. O" v( v$ F% e. n                swarms.buildObjects();
0 Y# u- f' J( @5 [# W* M                swarms.buildActions();( L* C$ v! J; X3 B( E4 h
                swarms.activateIn(null).run();+ D0 W. o4 _' P' h
        }
( j" v. \8 z3 Z& x# s+ j$ }5 E. T
. h: {4 R: R6 A" q1 O, o0 Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-15 02:52 , Processed in 0.021594 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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