设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7431|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 H! `  I: I% p

4 H( C6 R. t' l0 t1 f本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! ~) _3 A& }% J" I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. }! a& L! d( H" V! A2 n
swarm.SignatureNotFoundException- y1 x2 z; i. Y5 _4 u
        at swarm.Selector.<init>(Selector.java:76)6 `) ^: S7 k+ P0 v" `4 w* J
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 _% G8 H7 ?% M        at ActionGroupDemo.main(ActionGroupDemo.java:67). F5 J' ]/ r2 J$ h
. z( |' y  |! ?% W' c7 ~7 z

% `3 o# @$ x0 q- d0 P* P8 Wimport swarm.objectbase.SwarmImpl;
  r0 p  {1 W- S6 ]) v1 bimport swarm.objectbase.Swarm;
7 ~5 u* D! y1 e4 Y2 {import swarm.activity.ScheduleImpl;  ^. i( W* i) C- c* j
import swarm.activity.Activity;# C0 O) M! r. q# W9 a9 q6 ~/ J
import swarm.activity.ActionGroupImpl;
3 }2 Q& h; \+ Z6 nimport swarm.collections.ListImpl;5 v5 {% O$ T+ y# w8 I0 v9 n7 ]
import swarm.defobj.Zone;
+ y! G, B/ i$ n$ p9 {7 kimport swarm.Globals;. J% X# z: e3 p" h6 d' z7 k
import swarm.Selector;
+ t% q8 j4 F2 q1 u$ W% v6 Nimport swarm.activity.ActionGroup; 0 o) ^/ `" k7 {5 E" S3 C
class Agent {) \  h. e6 O& I
        char id;
0 d; o: S' ]7 A6 |" F
- i% a( ?) P3 k% @/ }, ]        Agent(char id) {
/ w  j$ d" A' q6 ~                this.id = id;) k* o# l& x1 {
        }) O3 F7 Y% M  Q# y1 a
8 o  f6 w, a# x
        public void agentStep() {
+ T1 t- ~1 [" c, h3 O5 M                System.out.println(id + ":" + Globals.env.getCurrentTime());
; u0 P6 K) m( y2 o        }
+ s) T: ?0 w+ [! W7 @" Z}
, |# Y- ^) G; T; R
: z- }7 }0 O- t3 Q" Apublic class ActionGroupDemo extends SwarmImpl {+ W3 v/ V5 k3 w! k/ Q
        ScheduleImpl schedule;' |3 W5 |' Z3 `5 t5 Y0 k
        ActionGroupImpl actionGroup;
+ E: q, W4 Y9 @1 N        ListImpl list;( L5 a; t, _3 w9 I
        char Id = 'a';3 w* y% t' M( h7 M  O  Q' x

% k* u3 C+ c7 R/ P3 x        ActionGroupDemo(Zone aZone) {) A) o# s% \5 d
                super(aZone);
& k4 U8 q' [  B; n, e                list = new ListImpl(aZone);. x$ F: l( o6 E" s/ r
                swarmSetp();) j# R' T+ M6 V) L* @/ G; C8 \1 e2 l  K
                actionGroup = new ActionGroupImpl(aZone);2 t, Q% f% z5 v5 J
                schedule = new ScheduleImpl(aZone);& A* f) }0 m, F' ^
                try {
7 V5 S4 C  a0 X, t% _                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% |' c6 P) W3 [+ K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ }& ?% ], l5 s9 ]                        
; a, Z1 d; t6 N  d) _                        actionGroup.createActionForEach$message(list, agentSel);% ~+ M5 ^. s" Q
                        actionGroup.createActionTo$message(this, swarmSel);
. X7 N! ?7 q2 o. l" x, [$ r- P. u- r! a  K                        schedule.at$createAction(0, actionGroup);
9 J/ M6 M) O. V                        schedule.at$createAction(1, actionGroup);
2 J" H, L3 w# \: {                        schedule.at$createAction(2, actionGroup);4 X+ H7 ~6 {7 I
% y, u# D7 }. h; {2 }! L0 e- Y
                } catch (Exception e) {
$ f2 c0 Y( o1 E6 z3 Y- N                        e.printStackTrace(System.err);( e3 f/ [; ]' I6 p0 R0 N
                        //System.out.println(e);
& L/ {9 M! ?/ n9 D                        System.exit(1);9 T! J7 |8 C2 B6 `
                }
: C: ^; A  d5 l$ @" I0 A2 ^. B, p- Z: b0 F" W, w" D( n. N

/ K7 @: S6 w. L8 h6 q/ [        }
' E( a- _/ @6 g0 _4 f- Z
3 m0 D) I7 K# e" ]: j* d: m+ ^        private void swarmSetp() {
, P0 q' W" n6 g                list.addLast(new Agent(Id));  z6 Z8 s+ g. m4 U9 C7 ?: G
                Id++;) g/ ]. P& K( Y9 g# u# s
        }
/ e. B* q& W" {0 ]- |( f( c5 Z" Z# [; U, K
        public Activity activateIn(Swarm context) {
7 i* T1 K6 _4 p                super.activateIn(context);
) I1 \5 s5 Q' V$ s. A1 Z0 N                schedule.activateIn(this);% n" [& z% g& D2 E8 g0 S) S7 a9 o
                return getActivity();7 R5 u; n9 [& V
        }) t9 G7 |' C1 l& A) K5 g4 B
. x+ v4 D' J: s8 f
        public static void main(String[] args) {
  h3 C2 r, R4 h( N' h8 w% M2 o                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 o+ T0 T- s& O0 r6 A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. M1 ^- G. b! R$ `3 z. E9 ^( s                swarms.buildObjects();. z. R+ k3 C" n* ], a, F4 F
                swarms.buildActions();
% t& j# T% P6 n5 h                swarms.activateIn(null).run();
# `3 u* e: n: n* M) m1 e& ^' A        }5 k9 M1 O0 N) y5 p* ?, M
/ c6 k( l8 s  u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 11:41 , Processed in 0.017212 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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