设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4880|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " r! E! s; }8 L  b) s

' v! U* F, b& e, [9 _( \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 g" u4 d2 ]7 F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* H$ l3 w& u9 e! I$ Z( k* t2 g
swarm.SignatureNotFoundException9 C6 @9 |4 C% e4 ^
        at swarm.Selector.<init>(Selector.java:76)
) M1 z1 I6 |+ g" d- d1 M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" Y' G" t5 W5 Z2 x& H
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 w+ m  U% L# F) K; X
+ K9 ]. Z+ @2 T" q( y+ P: p4 }( M! f. \1 o" f( |
import swarm.objectbase.SwarmImpl;
6 h7 n, p. A7 y7 u( p2 }import swarm.objectbase.Swarm;8 S; N5 V0 [/ u! _3 i
import swarm.activity.ScheduleImpl;* S" a! s/ E7 \' S3 ^2 g* E- s
import swarm.activity.Activity;3 p  M& X- k4 N7 e8 W+ X/ V1 l
import swarm.activity.ActionGroupImpl;; Z* G/ P2 o8 x; R
import swarm.collections.ListImpl;
" @  P/ l9 |; ]% _" Uimport swarm.defobj.Zone; % t" t4 O& L) b4 [5 [3 w' Z* A: e
import swarm.Globals;# {7 P+ q( q$ ]; B! ~1 b
import swarm.Selector;
8 g# {$ \" L$ T8 N) iimport swarm.activity.ActionGroup;
1 F% N, w6 f4 g8 p' Aclass Agent {, q# }3 f$ ~6 W* L4 w0 H) r8 k; N
        char id;3 Z4 F4 v. G8 v6 C; u6 m1 W

( _  Z3 e+ |( n! e* A: @        Agent(char id) {
2 T( j" K! ^& p6 t1 U                this.id = id;2 p" L' P' d" k$ B4 ~
        }
% Q) p: @9 G% S+ D& }  w- R/ z  ^7 f+ d
        public void agentStep() {1 |6 |) U% C4 }6 v# c# e
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 ]& C! }+ R3 r) j7 z1 V: O        }
" E, l; J; g: D4 k4 v}+ W0 V* E, l0 x% {! ]0 P! [& ~

( o  W+ B, ~7 W9 z  {0 i3 v# bpublic class ActionGroupDemo extends SwarmImpl {3 O/ R. C8 x1 R' K3 _
        ScheduleImpl schedule;
+ m5 j  V1 T3 w. N0 ~" V) o        ActionGroupImpl actionGroup;0 f( ^' R* I4 E/ @5 k- w
        ListImpl list;  X$ I1 o4 p$ H$ E
        char Id = 'a';, [3 F; S, `0 q3 B% _7 [

0 X; G7 c9 j7 C9 v) ?        ActionGroupDemo(Zone aZone) {3 u) O  t/ c6 N! M  h, c# h
                super(aZone);
9 }9 e: i) n% u                list = new ListImpl(aZone);8 S* x( M% {% I2 q+ @
                swarmSetp();5 o9 f2 b( B  m( ~
                actionGroup = new ActionGroupImpl(aZone);
2 C0 L" {$ Z; O/ B; k+ L                schedule = new ScheduleImpl(aZone);+ ]0 O& R  Y- f
                try {
. i; y6 Q1 {; A% x* F' p+ u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. f( a2 J, e. _! u0 S  z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 E7 g2 @$ Y! r0 r2 ~* t                        7 E" k+ o0 |* j* V; Z0 q, ?
                        actionGroup.createActionForEach$message(list, agentSel);% x, f2 j6 Y4 B" v
                        actionGroup.createActionTo$message(this, swarmSel);* ~, K# `) }+ d" ]4 `
                        schedule.at$createAction(0, actionGroup);: [8 `, G* d8 \; h
                        schedule.at$createAction(1, actionGroup);; |: ~3 l3 X1 T  @/ d* a, }5 Q+ o. d
                        schedule.at$createAction(2, actionGroup);
0 B# E& g: \( Q" W% G% u% R0 f, E0 l5 k1 M
                } catch (Exception e) {
2 T! O* h- l% a% b                        e.printStackTrace(System.err);
3 v6 A& }" U, y: n                        //System.out.println(e);" F/ _) a3 h3 X* C
                        System.exit(1);; s" h$ x1 J; v9 u* y
                }: P1 n5 t, H0 H" i2 t1 q- L* c

0 B: p4 h  {4 {/ I$ @6 t' c, r0 Y! C3 g8 n6 z( P" d; \: t
        }
- E( u5 P9 S& f5 m( ]* l3 [1 X
' X, M3 G1 T3 ^        private void swarmSetp() {( |# P. V1 x! G9 y* ]: d( ~
                list.addLast(new Agent(Id));3 o, K( |4 S4 L( ?, l* G6 c( `
                Id++;7 I2 }/ U8 E$ P8 o
        }
3 c; P7 d% P$ R9 T  H) t- p
- s" n; M! A  \2 Q) [! {( S        public Activity activateIn(Swarm context) {* E5 k. d  N/ j
                super.activateIn(context);. p3 l  H- h& A6 `9 y! |
                schedule.activateIn(this);8 E+ d4 u$ |4 i
                return getActivity();
' d5 X4 `# v; t- j7 r9 ]# |3 ^        }+ S3 {/ ?4 x! A

4 ^$ X6 Y5 t3 I8 p        public static void main(String[] args) {
* k. e" b- ]7 q; A0 p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* H. F' s( f0 [, m9 C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ l/ c( `5 |* s9 l                swarms.buildObjects();( c3 E% G* }6 F/ H; t2 t
                swarms.buildActions();
7 f" e4 s! c9 Y% f" w+ M* K  v# _                swarms.activateIn(null).run();
6 C% x) t0 U2 ^7 }        }
* t9 p' e1 W( {' e$ e8 {, ~# |. L2 i( X8 z1 b4 k. R  L) p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-15 17:13 , Processed in 0.022241 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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