设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9971|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - \0 E( i- t, X! ~, Z* O3 J0 F% d
; l: L# Q: S" ~; n
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- x& I' S( j+ W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: v& \8 r; W" H& `' _- ]3 _3 g- Hswarm.SignatureNotFoundException
0 F; h( L/ X: Q, h+ P        at swarm.Selector.<init>(Selector.java:76)
& N  R: L0 O. |4 @0 w        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! _2 d, H3 }$ D( V1 w6 x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' ]  x3 |: C% a

4 C' H4 u# `4 p  q, |4 m# @4 T: U! B9 A! E5 Z4 a, `! B
import swarm.objectbase.SwarmImpl;, d$ n! v: C3 u: C% J& o
import swarm.objectbase.Swarm;( I9 Q: I1 W3 I8 |3 _
import swarm.activity.ScheduleImpl;7 Z  k* k+ D$ s- R0 n
import swarm.activity.Activity;& v# y% ]/ i  e
import swarm.activity.ActionGroupImpl;
" L( M0 M9 M0 n8 W% m- rimport swarm.collections.ListImpl;
9 j3 A: m  x& z  Wimport swarm.defobj.Zone; & L8 G( h# @; O4 ?5 J' Q+ O
import swarm.Globals;4 j4 q3 V1 W4 Z& o* p
import swarm.Selector;
* a8 @' G9 I9 Ximport swarm.activity.ActionGroup; 8 r/ j# J& i1 ^; a; c' D
class Agent {3 L& ?5 Z* U' _! r6 J' s
        char id;
/ J" J; l) Z2 c) ?9 u5 W
- P+ Y& E+ [+ o9 V8 Y5 J        Agent(char id) {7 B$ R% e9 q0 L- u/ N
                this.id = id;4 v6 ]) q8 V7 o% H: v
        }" b; }7 y8 ^3 {

: r! p' Z* E, E% T& U( p        public void agentStep() {# M' E) m! ]* F$ T
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; @+ R) S+ j, K7 M2 g% `( h        }
( U7 r% f) ]! b& B3 G/ m& b}
. t: M. t7 S9 z7 m6 n4 Z# Q* m3 d3 g, U, T0 h; r
public class ActionGroupDemo extends SwarmImpl {8 i+ g- I7 e" m) Z- A6 y
        ScheduleImpl schedule;0 a% a0 c5 d- n2 l" ^4 j! c
        ActionGroupImpl actionGroup;
) {+ V4 @+ w% ~% Z. Z* L        ListImpl list;
- n& n$ V5 m% Y. e% e) X9 L  A, {5 E        char Id = 'a';
6 t$ s8 Y' }5 s# t) w  C- c. H5 v. u) V" W# b, ~' J
        ActionGroupDemo(Zone aZone) {8 f5 k$ \; E3 `' U: E
                super(aZone);
. k' d! ^- R4 s1 V4 M7 u% l$ d( Y! t                list = new ListImpl(aZone);9 q4 S# F' e* p) O- {5 T" w& N
                swarmSetp();
2 g3 P% G0 b8 [! S- z                actionGroup = new ActionGroupImpl(aZone);* R8 |% P) J$ k- ~
                schedule = new ScheduleImpl(aZone);
3 H5 n# A* A( L8 o, J3 B                try {! ]/ r9 S9 E- c* n' M2 v- }
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! ^! @5 H7 H' ]7 x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, A% K) Z0 m# S! z% h+ p
                        
6 {, M7 o# G. w' ?% }) Y6 M  t! `; N                        actionGroup.createActionForEach$message(list, agentSel);0 C$ ^) K: F1 |; a) {
                        actionGroup.createActionTo$message(this, swarmSel);- l, ~* D* a; _: _
                        schedule.at$createAction(0, actionGroup);
+ H. u) x$ e! e8 @# M, ^                        schedule.at$createAction(1, actionGroup);
& Y1 |* f# E& w" B$ K. X- D7 |3 L4 g                        schedule.at$createAction(2, actionGroup);) K3 R6 v2 M6 n* \  a4 l0 t. z9 U
. X3 e3 B3 _: P0 E% d
                } catch (Exception e) {
; C/ P4 O/ T/ j) m, P4 Q                        e.printStackTrace(System.err);/ d" V8 ~! V% v+ _
                        //System.out.println(e);* C# T# |" r; x' J8 y& [
                        System.exit(1);8 q) |; v: x, G/ q. K, C! C
                }5 u" m) P  l, D+ L
# ~* t) R' q5 E4 v0 h7 }  L
2 v1 M5 G0 E! x& Q) C2 P, x
        }
, P9 W6 F# a* \" @( z% b0 ^6 u( K) k! e# u) U; L- @+ c) W
        private void swarmSetp() {" j; X( E$ |9 @# V+ R3 U9 V( c1 ^1 H
                list.addLast(new Agent(Id));+ g6 E) o% Z4 Q8 G* i9 |  }
                Id++;0 Z- v7 I$ D% @$ B
        }
$ l) t4 F$ X5 S9 L# {5 t6 J9 O' |0 {; {! Z+ b5 d
        public Activity activateIn(Swarm context) {
8 Y% y; f2 k; D6 K2 v7 m                super.activateIn(context);
; G" _% ^0 \& U3 p8 `                schedule.activateIn(this);3 g% ^& |0 j% t  v; o# G, j
                return getActivity();4 O( T# h' m) {8 z1 g
        }( }4 Q* F" w) D) Q4 V

7 M7 R' I1 t: p        public static void main(String[] args) {
+ _& [/ @  _9 S. R9 ]& J+ p) i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- S( T0 l, `+ L  E; j                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 `' P/ P3 i* `0 M" D- L) @
                swarms.buildObjects();
8 L9 G, q7 ~; c" {' E                swarms.buildActions();2 \- c: {0 r6 h& ~' [
                swarms.activateIn(null).run();# j0 |5 ?+ P* E& d9 Q& f+ A
        }8 e  [0 h. C; g# J' H0 N
4 p- n/ i4 }9 ]1 }% X& ^, m. K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-30 00:36 , Processed in 0.017390 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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