设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8966|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : L( n; D% d4 Q, ?  u
5 R& {  Z! A9 Q+ K/ W+ c# J! z3 S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( M4 G' [$ j! G3 ]1 h3 |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! U8 M( I+ d( S" z, G- Y$ c1 P2 r; fswarm.SignatureNotFoundException
) @/ r1 n6 B" x$ o: U) W- w/ z        at swarm.Selector.<init>(Selector.java:76)
; g5 e; n- u: x0 U/ D. ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 U# [5 `/ k2 b+ ]& U) o" w        at ActionGroupDemo.main(ActionGroupDemo.java:67)% C3 F- [8 _( J: {$ d" V: r. A

! H% }; {; w8 b9 ~) h; U% v5 I) _. a0 c$ e! @4 o% x
import swarm.objectbase.SwarmImpl;/ P' ~/ ]1 f7 y2 ^: M  _
import swarm.objectbase.Swarm;
" ?8 Z+ L) i0 g: X, C1 limport swarm.activity.ScheduleImpl;
4 E8 f; P' b* `" F3 z4 `, Pimport swarm.activity.Activity;8 b% Y9 ]$ G+ ~7 R" _9 k
import swarm.activity.ActionGroupImpl;' U" o' X( X$ h! S
import swarm.collections.ListImpl;. J* O# G& G2 r; r6 a. a1 [
import swarm.defobj.Zone; 7 ]4 q) U" S7 e- A
import swarm.Globals;1 X' n3 y) }( s
import swarm.Selector;$ i3 I$ D/ V: t1 Z
import swarm.activity.ActionGroup; " m% h# z9 U* T
class Agent {# W# a- y. r$ m4 ?* f8 r/ C, V
        char id;3 a0 s/ M2 |" H8 |
' v5 q( _! S0 u6 g9 E$ h
        Agent(char id) {- z- |4 w$ a% |8 |5 B2 A
                this.id = id;9 i4 G$ L3 s, C- V" ?4 C; k. \8 ~
        }$ R9 \, x6 z% {+ Z) b0 u6 R9 e" d
; X# o# ]! k- l, o
        public void agentStep() {3 @  ]/ g- Q- P
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( F' ^: S8 p9 c  v% H; C, X        }
, W! v+ t6 _. c6 ?- D. w- ]5 I}
& J1 e+ O; y+ d( O* Y1 v+ D
% j% t! F# ?+ g5 t1 Qpublic class ActionGroupDemo extends SwarmImpl {5 {: G$ a5 Y8 B3 y
        ScheduleImpl schedule;
# A2 N( U- A! ~6 \: i3 L        ActionGroupImpl actionGroup;
# S- B- b$ z9 P* w8 |9 @        ListImpl list;: y( _6 l" {8 O% H
        char Id = 'a';
, L1 i3 [- f* O: m; r  }9 u& m7 s5 ~5 V2 W1 c# f
        ActionGroupDemo(Zone aZone) {# R4 J! f0 f2 M$ s5 ]
                super(aZone);/ W' s$ z" N* M* l; m
                list = new ListImpl(aZone);
: H9 Q+ y+ J2 w6 c/ q# e                swarmSetp();0 A. H, F9 E; u1 R$ ~
                actionGroup = new ActionGroupImpl(aZone);' W* h$ r# N+ X9 K  j' c! @/ ?4 Q
                schedule = new ScheduleImpl(aZone);
* v( |7 T8 l0 a: g+ _. B                try {+ S: E% L, d' X+ z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( \' E* L0 F6 D5 k9 v" p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% I. D7 |& Z3 t6 W                        # s, k8 o9 ?0 d, u  Y$ l1 E
                        actionGroup.createActionForEach$message(list, agentSel);1 ?6 L4 |2 _. X4 W
                        actionGroup.createActionTo$message(this, swarmSel);$ n& P- J2 O4 @5 y" O: `
                        schedule.at$createAction(0, actionGroup);5 I: T* v  R' y7 ]* J. r
                        schedule.at$createAction(1, actionGroup);  H# j3 _) j& R" U' ^+ u
                        schedule.at$createAction(2, actionGroup);" @5 i$ Z9 r& ^

# F2 r0 |4 e  d1 G- K. A( x                } catch (Exception e) {
: H! P2 U2 x% ^! ~                        e.printStackTrace(System.err);4 E, s- w' m9 {/ o
                        //System.out.println(e);/ B5 n( m: `( d% R% h8 d4 E* d
                        System.exit(1);
7 e* Q3 v5 b2 I7 U9 I                }! \3 A; F( ]: F

% Q" Z% @& i2 E3 x8 [
6 t, @, R0 p, U  ^" @        }& J( z3 u/ h0 @0 m

: d5 L7 d9 ~5 ^! F        private void swarmSetp() {
+ F* p0 W8 k, @: a) u  a$ D* V                list.addLast(new Agent(Id));
1 s- N/ X2 w6 p2 S5 ?" C- J                Id++;
9 |/ V% W. Z) u& t/ G7 E9 g        }' g# W( L* t5 ]0 v5 `
# w! A- t# y2 z# y7 K" C
        public Activity activateIn(Swarm context) {9 {! A$ S$ p' g% U* s) t5 a" a
                super.activateIn(context);
3 y9 _1 M) K3 [+ W9 n, `                schedule.activateIn(this);5 z: ]1 L+ O9 n+ S7 h% n# a* M  l
                return getActivity();
, |+ H* w; \, W& h& I2 Z$ \        }
8 z, f2 ^0 o1 l0 Q, G6 n# f+ y$ i( }3 ]8 J1 D) P% t2 S
        public static void main(String[] args) {
+ ]' r, N- V2 O: F% N' b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ M5 \; e1 d6 v* e  n8 @( P( ^9 r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) f0 q* {& F6 f8 M8 a& s+ q
                swarms.buildObjects();! ^& Z/ L5 D, d+ J9 R
                swarms.buildActions();. {' ]/ _0 \! G# W
                swarms.activateIn(null).run();
4 I7 o1 |3 H' f( X3 ?        }+ t3 K+ v/ G. t7 o* G
6 r! Q( G; X" X# }. y; v) Y2 s3 {
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-28 02:47 , Processed in 0.024155 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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