设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7674|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! f; ?- O2 r- `5 J2 c% d  S/ q6 f1 U; f9 N5 ~* G, T; b, X2 Y( {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  m/ k  o; i  ^7 ]' C- I7 m& U# ]3 p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 K& u* W/ }- P: x3 A+ ~
swarm.SignatureNotFoundException
4 k$ X# A0 f5 B, w; L& z# t6 `        at swarm.Selector.<init>(Selector.java:76); r4 D- k% X) f  ^4 p1 Y' a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# W  p5 b) q- Y1 }: j# ?' f# h. {        at ActionGroupDemo.main(ActionGroupDemo.java:67)# \. t0 s$ N+ N( J: H' E

2 |; j* m7 \8 w3 B2 }; ]- [: d$ V% T7 Q$ y4 u
import swarm.objectbase.SwarmImpl;" a' i( [; @! W% m3 N0 f+ Y: T
import swarm.objectbase.Swarm;& v6 K) w$ e6 }
import swarm.activity.ScheduleImpl;4 V% E. N! O, W2 E" ~
import swarm.activity.Activity;& O' a. N, }' D; B3 S/ w+ ~
import swarm.activity.ActionGroupImpl;, k8 k; G$ Q' A0 S3 \/ F; B
import swarm.collections.ListImpl;& O8 Q1 A- g5 Q" m5 o7 }/ I
import swarm.defobj.Zone; : h* e5 U6 _. I9 C
import swarm.Globals;
" D) l1 }8 l% R+ D9 j* C* himport swarm.Selector;; Z# q8 Y$ |* Z" ?0 w
import swarm.activity.ActionGroup; 8 {% x  M# L' R6 e8 W: |
class Agent {" @$ h1 j" L% j6 e$ k
        char id;) B" Z' [) z( E

2 r+ i# x) K% @. z, A        Agent(char id) {. R9 }: s! n) N! H$ ^% k$ y, i/ \
                this.id = id;+ V$ L# g1 }/ ^* H
        }
5 u% O8 ]' u. Q7 T- P; Z  o- Z4 F; x( J% f
        public void agentStep() {
  S6 R7 C6 q8 ^# p, o                System.out.println(id + ":" + Globals.env.getCurrentTime());
  |% t1 `  B1 v+ J, d8 f        }
' O8 b1 Z" y4 |2 O/ J- e( M$ t" j4 Z: H}
9 ]: b: ?8 G1 q( r* W
2 E2 a6 |& B& mpublic class ActionGroupDemo extends SwarmImpl {7 H$ P: d5 a' a& v' M2 `8 D
        ScheduleImpl schedule;; r: s/ K8 h+ F- _- F
        ActionGroupImpl actionGroup;
3 s6 L- |3 Y1 B$ c/ ^  u, d' ^( B, c        ListImpl list;
2 G6 |9 l8 S# s6 u        char Id = 'a';6 Z( L% F( F9 C3 X# k" Y
, E7 w  _3 N. Y
        ActionGroupDemo(Zone aZone) {
9 X) J6 }' Y& s0 M% q& N5 p! u                super(aZone);5 r( M* J6 v* B5 E. r& [
                list = new ListImpl(aZone);4 K: ^/ m$ e' }( |3 {/ C
                swarmSetp();7 o1 H2 P: R$ O# h0 U
                actionGroup = new ActionGroupImpl(aZone);& j* o5 O% J9 [- s
                schedule = new ScheduleImpl(aZone);
- `) x) @, S+ W8 q/ T# k* d                try {
# N+ S" ^6 H- e' c6 f                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% T" ?" l; Y, ~; |: S; `
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 v4 O7 _' L  b  d* p. n; y8 |                        , C" Z9 b: w# O1 i6 w/ W& X* R* V
                        actionGroup.createActionForEach$message(list, agentSel);) D$ h& Z4 u6 q. `3 x
                        actionGroup.createActionTo$message(this, swarmSel);
- {6 y9 A+ z* \/ a7 R9 d% @                        schedule.at$createAction(0, actionGroup);
- }! D  }- ?3 U. _$ V                        schedule.at$createAction(1, actionGroup);
8 Y/ ^) |6 g; a                        schedule.at$createAction(2, actionGroup);
6 _0 J: I# m/ Y
- C- ^+ n# k8 s, z% L! V  F                } catch (Exception e) {9 v( _" e% x1 i$ {& s+ `4 U
                        e.printStackTrace(System.err);
$ ^% H2 T9 r" j" k& H0 k                        //System.out.println(e);
6 u( k; {+ ~, C                        System.exit(1);& `+ G# @, N) t
                }
8 l1 R/ ]  B7 W
6 h; Z0 u( @0 J  o, z3 a/ y
3 ]$ \) s- I. n7 ~4 v6 T        }
# p0 n4 [9 i4 S) z  h, p5 H! x' D1 t. `! j# }$ k
        private void swarmSetp() {5 \, w9 A6 ~3 l
                list.addLast(new Agent(Id));
3 }, `8 L# Y8 w3 P                Id++;" ?' j& O. B; W1 k
        }- E6 d( K* }* A8 m% T
% o# y8 @* r1 m8 R
        public Activity activateIn(Swarm context) {+ K+ S- X1 t% n' m$ Z
                super.activateIn(context);
4 t1 X( \. q" ?                schedule.activateIn(this);# f( I; p, {+ ~  @4 m! {- v3 `
                return getActivity();
$ b8 t% f2 b: {  Y        }
+ X9 x  `5 b% y  r/ P0 D  p6 Z" X% t
        public static void main(String[] args) {
' |# G8 K4 _, l/ [* K                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% k! I/ n2 B! l, p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 V+ U' n$ [3 Q
                swarms.buildObjects();
3 u! K3 m$ D* g; c3 N                swarms.buildActions();
0 }7 C$ W  R1 H7 g+ l                swarms.activateIn(null).run();
; [7 y" l, ?- N6 |% G' i6 W6 f        }
$ H4 t0 a' c7 W& i5 o7 Q
. m$ e% w# j1 I; z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 00:21 , Processed in 0.016690 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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