设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6343|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 I' l" K' K- s( ~5 R: a6 t; t8 i% g; _$ \, L0 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' C7 v; ?# t4 U. |3 R, j+ C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 r1 Y3 W7 ]  q6 ^1 b
swarm.SignatureNotFoundException) l; t$ W  p1 Q
        at swarm.Selector.<init>(Selector.java:76)  d; j/ U' l+ `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. t. b* ?/ u- f% s& N8 K& p        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ d4 E  c/ J- w7 |. R  a0 z2 [% r9 V) ~4 u
6 {/ c- U: Z; N  d7 P
import swarm.objectbase.SwarmImpl;+ b5 q5 |, u0 Z) D* k' M
import swarm.objectbase.Swarm;) E2 G, N* H) c) P: s3 a) W
import swarm.activity.ScheduleImpl;
! ?9 v* c& N7 F- D# kimport swarm.activity.Activity;
3 j/ @; E7 G9 c( y7 n& o1 \+ Gimport swarm.activity.ActionGroupImpl;+ x) r; U6 B. _! I! _
import swarm.collections.ListImpl;' W+ b$ n# m% V3 h% N9 Z# ]2 ]* ~/ s
import swarm.defobj.Zone; ) v% m6 x. E9 g0 ^$ M& C
import swarm.Globals;. y+ _* b' o8 ?" {' P! L
import swarm.Selector;, M- U3 n  w4 n# n: a' y& V, y
import swarm.activity.ActionGroup; ! H4 M* [  i7 [: b* m( a+ q3 V
class Agent {
- M; G8 R) S+ J5 b        char id;& ~; e' A* v% [/ x

7 _6 O. p5 E8 l0 F3 U" d        Agent(char id) {
; H. D( T. n& x( W& ?6 S                this.id = id;. o0 y. ]2 ~1 _/ Q
        }
) Y! ]6 P. s2 o
% M( j7 N2 N8 D1 N        public void agentStep() {9 Z" d/ Q/ n* T! V
                System.out.println(id + ":" + Globals.env.getCurrentTime());% A& I4 \* u3 T' G
        }5 M1 M5 {+ R$ ?( H( V
}
" W- ^# @/ t) J6 I  r, Z; x) N- L8 Y
* _5 [: N% D# N( H( ~public class ActionGroupDemo extends SwarmImpl {9 f  D0 z1 l6 a' D2 H3 T. U& ~
        ScheduleImpl schedule;
8 M9 _& O: I/ a% k$ V        ActionGroupImpl actionGroup;: K# F: K- f) X6 I+ W
        ListImpl list;
8 K5 A+ k- R! Q        char Id = 'a';
' J: l8 k4 Y6 R9 r* W2 r: w+ _- ~7 c0 ~! h% N* e9 K
        ActionGroupDemo(Zone aZone) {
" y% O( _4 q$ o. x* L                super(aZone);" P9 a- B1 t1 G" \, P1 F; n* J$ M
                list = new ListImpl(aZone);( i  M5 k6 u; P( P
                swarmSetp();
6 _' m# S9 Y" l$ n9 B3 m                actionGroup = new ActionGroupImpl(aZone);! {8 h+ M( E( @! G' v' A7 y1 `
                schedule = new ScheduleImpl(aZone);' k3 i% ~5 k6 y
                try {
& z8 O( h" k0 T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! ~) s& ]- V' {" ^. b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 f( T9 _! M) C/ y% |0 w
                        
  f  z" H7 E/ l6 x# w9 a4 R                        actionGroup.createActionForEach$message(list, agentSel);
9 i8 P8 \9 O7 m/ f5 m5 F% c                        actionGroup.createActionTo$message(this, swarmSel);
% D9 \5 c7 b. X& Y% b7 }* q4 j  e                        schedule.at$createAction(0, actionGroup);! O) C- t6 q) D/ u4 q
                        schedule.at$createAction(1, actionGroup);' H$ ^3 s. H1 i$ [* U
                        schedule.at$createAction(2, actionGroup);, x: e- s' w! F8 D

. }$ M* x% l8 A. T                } catch (Exception e) {; c4 Q7 I( e: F0 X4 d
                        e.printStackTrace(System.err);' M# p8 B7 k  g+ N5 E1 H0 N2 |% ]
                        //System.out.println(e);
; h; L. r5 ]) J% {- {                        System.exit(1);6 U5 q! L- _4 ~! \2 T! l
                }) D+ w) j/ q1 @: n& @

8 o7 X4 }* U0 B; n! u. s6 h- e
. w; _/ E5 L$ n- E# C+ @        }
8 d, h7 [, u# X- G9 M
; q% C9 X. z* F: C9 ?        private void swarmSetp() {
( Z- e0 [: [. C! g  U7 c1 K                list.addLast(new Agent(Id));
5 Q- H" V! {# a8 M4 d                Id++;/ L: x1 z1 e; I! d3 n0 m
        }: L6 a' ?5 F' B! x3 S% R) L$ k
; e. I+ r4 o8 g$ p& o- v! ~) L
        public Activity activateIn(Swarm context) {
  M) i2 w5 `9 |/ ^9 @                super.activateIn(context);1 {. U+ v  b% U- R+ c
                schedule.activateIn(this);/ C$ X" R) F9 N7 `( B
                return getActivity();  t; i$ J: Q6 G+ d
        }
" E  p5 }/ n$ u1 t+ F, _$ a+ X7 z4 V! h
        public static void main(String[] args) {: T8 G" B8 r3 _$ V
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# L8 r' ]- a4 G+ X0 r8 Z. H
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* N# |# ~. i3 h5 J                swarms.buildObjects();
" O  }2 L3 Y1 ~7 K  q3 m4 ]                swarms.buildActions();
1 h7 e1 I* [" z$ U, Z( r: j: F                swarms.activateIn(null).run();
- M3 O, S* b: d. ]8 j) [  o4 @! f) g        }1 b0 K6 U  C6 Z+ m# N/ w: Y

: G1 ^$ |  h+ r7 P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-25 22:28 , Processed in 0.019124 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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