设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10047|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; t4 }! N. g; j: a/ ]# J: C4 C7 C. o; K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: w% s0 s5 b5 O) O4 O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 `9 P( C/ w* ^swarm.SignatureNotFoundException& Z* S. X6 y1 g, f5 l3 A3 F
        at swarm.Selector.<init>(Selector.java:76)
7 q9 b3 m* |& D! e% d9 _* t$ R5 E+ K        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 L* R8 o" n3 x; _; E! A" H, b        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( }% c4 b3 Z3 Q; A, ^" i  Z) T( j
/ Z, W) [" g3 o7 S  H9 o- t  i: v
$ k8 _; X" B1 \import swarm.objectbase.SwarmImpl;3 x  O) q. y, f4 E. r0 z
import swarm.objectbase.Swarm;
3 H6 l. V2 c& W/ I" @. Pimport swarm.activity.ScheduleImpl;/ U9 Z0 W6 T: y; v" G* \- ^
import swarm.activity.Activity;6 |7 Q# h( _% I' Y
import swarm.activity.ActionGroupImpl;
; T8 Z, s- J6 l9 g0 a& m0 B* Wimport swarm.collections.ListImpl;  D+ H4 a" f+ }' P. ~
import swarm.defobj.Zone;
9 R4 H+ T% m. y8 pimport swarm.Globals;
6 Y% ^* ~$ L& y$ _( q" U/ mimport swarm.Selector;0 m7 w* H) b" S/ J& M9 `1 C7 y- m% L
import swarm.activity.ActionGroup;
: j$ ?# g4 t' Y0 e. R$ O$ }class Agent {- T6 {8 ^  B! n+ l* z
        char id;& e, W* Q3 P5 j! G9 n: Y

9 h% e5 s+ n8 o2 z5 U/ J& g        Agent(char id) {. P  w4 R. R4 x+ T+ E: u, c; \+ L
                this.id = id;9 I) n3 v- h2 n- ?
        }
8 d7 b, _4 h6 Z+ }1 v- m( }2 D7 \) ?" ]2 }# T2 a' ~: J  D
        public void agentStep() {
8 X/ `# B3 f8 `9 m                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 |! j5 o* E0 N6 t# J7 ?: q        }
+ @, K. P& m4 ^# j9 x. Z}2 A+ B6 \4 K7 t7 }( u+ q: m" }: r' P

, A# i) y  ~/ @6 y  lpublic class ActionGroupDemo extends SwarmImpl {
( E3 Q, ~5 {; l) V. X        ScheduleImpl schedule;
% o5 ~* Z1 i# i) ?7 D/ w5 H        ActionGroupImpl actionGroup;
& Q3 b1 W0 i+ M  T# [, ]2 T$ p        ListImpl list;
9 u) o& Y- |7 j  t3 d  Q        char Id = 'a';# b9 }# Z" K8 X: A  x! P2 G# C
. Y* \& l; z9 t7 c6 z9 R; W
        ActionGroupDemo(Zone aZone) {6 E' P  H  ], e9 x0 D
                super(aZone);
+ L% s, g; p$ n                list = new ListImpl(aZone);2 L5 r9 ]4 M3 A$ i% i' c) I7 F* W( H
                swarmSetp();8 k8 n% m) K+ V2 U& S
                actionGroup = new ActionGroupImpl(aZone);
, j( i& q& G2 F" v9 {2 F                schedule = new ScheduleImpl(aZone);0 x1 I2 J# n- C3 ?" b1 Y
                try {
3 e' Z" S  I0 ]7 T9 o3 X5 g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* w! H% {: |% ]9 T5 P1 C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
3 @  Z/ J" C  b- t0 b7 w/ t. ?. P: p                        ' \  @) E0 V* b5 s" M
                        actionGroup.createActionForEach$message(list, agentSel);, x+ Q! O9 z9 R7 F- ]% u  `
                        actionGroup.createActionTo$message(this, swarmSel);
3 t5 q; h- J; f" f+ q5 O                        schedule.at$createAction(0, actionGroup);
5 P# M  Y2 U. ~# R% y  P- W: H: ^                        schedule.at$createAction(1, actionGroup);) c* }& |( e# M" m; x  u$ F8 {
                        schedule.at$createAction(2, actionGroup);
; |5 n7 m( p+ m1 ]; W7 g
" h& ]1 R9 b- c1 Q# D                } catch (Exception e) {
0 U; n0 m' j( p3 K" @; P0 o                        e.printStackTrace(System.err);
6 \3 C8 l- X& m. o/ H                        //System.out.println(e);" x; n- r4 P/ H+ w
                        System.exit(1);" d0 n3 Y* m7 y8 z; V3 E5 l
                }* B1 y  ?) t2 _

" a$ y* G5 [. c; J
+ m0 s* C+ _4 ~" j# \1 T$ I        }
* _6 l+ |6 v4 z* a9 y" O% u
. Z+ V1 E% @; I& p7 u, R        private void swarmSetp() {
$ W0 e; m3 m) |$ `# |/ m                list.addLast(new Agent(Id));
% ~$ Z: u& n) N" L- X4 J5 j                Id++;
8 R% A& e8 {8 s2 ~( _3 U        }5 ?) Z; W  F. ~) l" ]( |1 s; k
1 J# W7 v( }2 ^# b" x
        public Activity activateIn(Swarm context) {
! q8 ?7 z0 C$ r: B- e" N) v                super.activateIn(context);
+ y$ c1 S1 \4 N2 G) j                schedule.activateIn(this);
1 o" Y8 t+ w0 P+ v9 H- D/ Q9 }                return getActivity();
2 x: i! w5 t! ?0 r0 u6 S0 u- p        }
; u. L( [5 r( {9 Y) Y: D& \) g. ~9 F0 y" u, S) T5 Z* x
        public static void main(String[] args) {
$ j: x5 h% d3 X  \9 r0 J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 z  q- P; W8 F6 Q; U  a$ Z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" t* H4 r4 ?: D8 E6 |# H( _5 X) C2 j                swarms.buildObjects();
+ X; h) ?+ i  L1 q0 H6 A                swarms.buildActions();0 c5 @$ m3 q. B$ T2 ~+ ]
                swarms.activateIn(null).run();: Q2 k: Z! x- f& P, R, e
        }" T3 X8 b$ V9 |" U

& G, s% j' Y6 j$ H7 P6 u5 l2 m% J* ^}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-1 18:07 , Processed in 0.013381 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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