设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9791|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 l; f. Q. S4 j: E5 X5 E. Q- q* ~$ c, H. A4 u1 N$ T7 R. |: j& ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 E  @! M5 S$ B+ O4 `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! H+ x3 ^% t$ w0 R/ L" e% ?
swarm.SignatureNotFoundException; H3 d! V) D9 |  \: [# u! ?
        at swarm.Selector.<init>(Selector.java:76)
& h' R8 c) h- g, B% {        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ z- N  R) A3 B* y0 c4 P: R3 ~3 X        at ActionGroupDemo.main(ActionGroupDemo.java:67)* t& W# c& s' l4 E0 C7 e9 i' F8 x5 _
( r3 B6 i) `4 ^) H
5 b- s( U7 W) e, H' ^* g4 j0 y
import swarm.objectbase.SwarmImpl;* `& I( n9 B  w5 {3 C. b7 e1 ^1 |
import swarm.objectbase.Swarm;
) L" }2 U0 N% E3 `3 R8 fimport swarm.activity.ScheduleImpl;
& W0 ]3 R- N% \" cimport swarm.activity.Activity;
5 m- _( C! E4 j5 B: }; g& limport swarm.activity.ActionGroupImpl;( l8 J2 c% w4 m8 u- V
import swarm.collections.ListImpl;
% F* Q: C. }9 m8 timport swarm.defobj.Zone; 8 ^5 K4 b! }$ e$ h
import swarm.Globals;1 V2 [' \) o6 D2 r* c! A
import swarm.Selector;) x( S5 U% Y$ y& L
import swarm.activity.ActionGroup;
6 f4 ~2 E9 P( l7 {$ [class Agent {0 W: ?& @" W0 v) P( j1 ]9 K* R
        char id;
. D# r6 Y+ v5 u& T4 W/ w
: }4 K8 d$ ?) j2 X        Agent(char id) {
+ v2 a" T% }+ m' |: |& h$ _- x5 y7 e                this.id = id;
& V* n, @  U  Q8 b& L        }6 B" s* J+ ^! @
" k4 h9 s- a# T% N- B2 e: z' T
        public void agentStep() {
1 D5 f1 A- ?1 j, V                System.out.println(id + ":" + Globals.env.getCurrentTime());' T9 [7 y2 P2 @9 E5 W4 c" W3 j! n
        }; {' J, g# V' Y+ Z: N, Z' C
}
  o; }+ w) B. q  w; G9 h* f" W8 M) p4 r8 v" ]& h  b' F
public class ActionGroupDemo extends SwarmImpl {( f2 P/ g1 l( v7 K+ d, c( ~, l" E
        ScheduleImpl schedule;5 {% {. e4 A- \( _
        ActionGroupImpl actionGroup;% G# Q' c+ w; b0 i
        ListImpl list;
2 S: z6 v" P( D/ H5 _5 y; f        char Id = 'a';
' S7 A7 F; g3 _/ C: E3 x' E
: n$ p( n1 Q" ]' w+ A        ActionGroupDemo(Zone aZone) {
; t$ T! s  c6 L# F                super(aZone);. M" y, a! P. I+ Y$ H" F$ s# r8 h
                list = new ListImpl(aZone);
' W5 w7 _, @! k* c6 D                swarmSetp();
; L7 L: @, \/ L/ \, x3 z                actionGroup = new ActionGroupImpl(aZone);& C- x; a9 ?6 }2 ?# a5 s
                schedule = new ScheduleImpl(aZone);3 m8 {8 L8 O+ w
                try {
! g( J) J) l2 i% v                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* p! Q1 M# w' m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& j) p. [$ I6 Z* x& W' K
                        - N  M0 I' s9 q2 p
                        actionGroup.createActionForEach$message(list, agentSel);
8 I% S, T" s  ^4 R; s! Q/ V9 g                        actionGroup.createActionTo$message(this, swarmSel);7 [  N4 j) Y4 O% B7 e( c4 N6 W- f1 H. q! ^
                        schedule.at$createAction(0, actionGroup);$ J$ ^4 a" T, n/ Q1 e. k
                        schedule.at$createAction(1, actionGroup);
+ ^7 Q# ]2 B8 j" d                        schedule.at$createAction(2, actionGroup);( Q, k8 |" p; |9 J3 W% j! p
% |- o+ G8 i+ ]* z; n
                } catch (Exception e) {
- ~; ^5 E8 R) K; o6 ]1 ]                        e.printStackTrace(System.err);
# E" K( X/ b6 C9 v) ]                        //System.out.println(e);
2 _7 e: `2 \% C* J                        System.exit(1);. l+ f' P. y4 v9 |* f
                }1 I1 {% v) g7 H% D2 ?! W, V

( K! @* d. ^/ I2 a' {7 |/ G% ?/ B3 ^  Q) t: E4 }) O0 x' K, ?
        }8 C0 I( x' r' N: V) }- E1 d
$ Q/ ~+ x% ?& q0 X0 ]1 O
        private void swarmSetp() {# H; Q* n# U8 ?7 B6 H" }; W$ _7 k
                list.addLast(new Agent(Id));
$ b8 ^# `1 \  n+ H                Id++;- i; D* W0 h9 Q2 i/ R
        }
0 z  O- C, a3 H0 }( e: d* j+ L
  I" V+ X+ L3 g0 i% n  R        public Activity activateIn(Swarm context) {
! \0 @) M" `7 w" f                super.activateIn(context);& O; r# `% Q. }( V( _. d$ y
                schedule.activateIn(this);" {8 Q2 C8 d2 k+ U  j' Q
                return getActivity();+ {8 d! J9 j# R# R/ X( m
        }- A: d) D8 d( B

- L' K5 C; s3 F* x; n0 N$ `        public static void main(String[] args) {
7 x) a: S9 d  ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
. ]9 r& N6 k' }* ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  `8 ]9 t" A; W  a1 z* Q. ~                swarms.buildObjects();
) \1 u( k* C0 {: M0 w& S. @* z                swarms.buildActions();
, c1 u  x9 \1 S+ W5 C7 U                swarms.activateIn(null).run();/ T( g- U" b8 V0 h, G
        }5 ]4 e1 `8 A# Q+ c- G
4 `! W0 B% p2 }4 w+ G6 O' @+ t' O  S
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-23 03:09 , Processed in 0.021503 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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