设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7133|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 h; {# X6 I4 ]+ y; S& C

( {2 J/ q5 V! l7 i* H5 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ Y1 F  U+ Y% k, U9 A! E( E
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  V" V7 ?$ ?4 h
swarm.SignatureNotFoundException9 R8 H0 O; ]1 a( \4 p2 f
        at swarm.Selector.<init>(Selector.java:76)
0 Y. Y0 H( M' R. F1 m; S& Y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ p3 W0 `0 [( t' k( [        at ActionGroupDemo.main(ActionGroupDemo.java:67)) g4 V% i5 C* \- A' j) `$ r0 X( [) o

! F: _+ c% |4 T( P8 W" t$ O; I# k8 x+ D: @- V
import swarm.objectbase.SwarmImpl;9 T; q) r; S5 g+ J
import swarm.objectbase.Swarm;( @# S9 t- F7 ~! |
import swarm.activity.ScheduleImpl;6 |7 G* ]/ e" K* H5 w! H- a
import swarm.activity.Activity;; ?9 x' C) {- b3 p9 y3 S# m
import swarm.activity.ActionGroupImpl;; g, a) t7 x. F! ?3 O
import swarm.collections.ListImpl;
4 x- _5 ]/ `' ], u( r1 B* rimport swarm.defobj.Zone;
- c6 S7 ?+ Q" e: Mimport swarm.Globals;
- S* W5 S" @. e7 F3 aimport swarm.Selector;
8 W/ k* O, S3 l2 V& E1 Wimport swarm.activity.ActionGroup;
, @; t' ^& h. y9 L8 F' m# S% Eclass Agent {
2 u. a0 |' @5 L# z/ ]2 m        char id;: ^5 @# L3 J% B* y; M8 B

3 G  L8 o8 K1 {( s        Agent(char id) {* f4 @6 z3 H* D; f/ U( c9 X
                this.id = id;
6 S" r0 g3 C4 c) |# D0 B( i        }
8 b+ @  R* j8 z+ ]- K9 p; m. t) V# R5 y9 u& S4 J5 o
        public void agentStep() {+ g' [% z# m6 Q/ ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 _& M' R5 X9 B6 r  L/ Y  r" w9 K+ ?9 ^        }
* R" X; _1 q* t}" L6 m; X3 P( h

5 R7 `3 u) a  V5 xpublic class ActionGroupDemo extends SwarmImpl {' N$ n2 x& J. w6 B
        ScheduleImpl schedule;* S! O7 Z" C: s! a# N
        ActionGroupImpl actionGroup;
- q& B& y% G' x! \6 C; J( Q  T5 c        ListImpl list;5 B# K" s' \1 v, P5 p! `
        char Id = 'a';
7 }; o( |9 ^6 ]( L* `1 M, g: r8 D% d& n
        ActionGroupDemo(Zone aZone) {
2 ^, w: Q4 G$ z9 w1 S+ v                super(aZone);
7 n6 q6 p  \8 R7 u! g                list = new ListImpl(aZone);6 i3 U2 E( _/ b! r
                swarmSetp();# i; [1 Z/ w  E8 ~  P1 E
                actionGroup = new ActionGroupImpl(aZone);$ ?3 ?( L. [2 m
                schedule = new ScheduleImpl(aZone);/ e* m! @5 a" |! @' O+ _8 r
                try {9 G$ d; o8 p( C3 e; Q3 d  p2 r2 ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ Y( P- v% @% k. g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) q' a& ]( e7 ^( K# C, F                        ( i: ?' t1 F8 g  o* M6 G% B
                        actionGroup.createActionForEach$message(list, agentSel);
% o  `8 j' W2 u% o, D4 j                        actionGroup.createActionTo$message(this, swarmSel);! G- K; V$ ~! w; {! h5 }8 ?
                        schedule.at$createAction(0, actionGroup);
1 G2 u7 L  Y' i" g3 U3 t% ]1 t9 P                        schedule.at$createAction(1, actionGroup);
& \: R0 E: B4 R4 l                        schedule.at$createAction(2, actionGroup);$ }: J" t9 L, T6 @; O2 l6 V

  h9 c" W( x; |+ E1 j  Z. X7 Y                } catch (Exception e) {8 M6 e) Y* ~% p- Y& G' V
                        e.printStackTrace(System.err);9 @; t3 ?. `" G) f) e
                        //System.out.println(e);
. U! T2 J) r% Y$ C/ u                        System.exit(1);
$ i" l$ N$ H5 K1 ]& H8 O! |" A                }4 ~* y2 ]# J: a- @; R) r6 }3 t# R. Z
0 u4 o3 b7 b/ W3 W6 @) H9 R( Z
6 r2 d4 P& Q2 ^  S0 r
        }
3 c0 i! L& i1 \0 D/ C; H+ `1 G  P! s, P+ M; G
        private void swarmSetp() {& o  v5 U+ k9 X0 q  j
                list.addLast(new Agent(Id));! Q1 T- U* P& y$ c/ F9 }' K( O/ D. s
                Id++;$ a: n' q* S9 k# {' N/ p, J. F
        }! t& q0 u% B1 R) d1 Y) K! e

+ D# X( A4 Y  u8 T0 ?8 ^        public Activity activateIn(Swarm context) {+ c, Z/ i* l  U7 g; Z# a
                super.activateIn(context);; z7 j8 [  V1 b1 t+ s  X( K
                schedule.activateIn(this);, M* a6 _; q- }4 ?1 F$ R
                return getActivity();" Y( ^! q2 T7 ?+ a
        }, Z' P2 D' {- a. v3 o
% \- l# f0 g5 k; `7 b$ |' R% z
        public static void main(String[] args) {
7 h5 u: U6 ~! Z8 j) D" H" \2 _( ~                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 z; }8 C, A% l1 R. O
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: b$ e+ t8 a0 m( f  F/ w
                swarms.buildObjects();# i3 {' @2 x" V! h% x; ]
                swarms.buildActions();
' J* ]) Y! z  s; I8 ^                swarms.activateIn(null).run();0 w8 B8 p  s+ b
        }
6 D& m: O  ^9 b* _2 _# R7 l, t, j1 x- i! `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 13:35 , Processed in 0.023828 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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