设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13223|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * U4 i+ |3 @# X9 h4 q2 L6 r6 t

/ z  k: C8 b0 e$ k2 C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ j9 I  T, R: m; @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 |% [3 Z- ~) i" p, {  {) J( T
swarm.SignatureNotFoundException
6 h9 h  w1 X2 q( b" F        at swarm.Selector.<init>(Selector.java:76)! \* @( ^1 x1 G" ]
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 {9 @2 K; U1 G* S6 a; y        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 i' d! c0 [$ d; X6 {
# H7 P1 Y# B  V7 ?( \8 P

8 I  O0 D) A6 P8 _$ f9 D# A2 t, @3 ?. Qimport swarm.objectbase.SwarmImpl;
: V2 Z7 e+ O  i' [- yimport swarm.objectbase.Swarm;
2 Q! g! W' A5 Y9 I) n, Iimport swarm.activity.ScheduleImpl;- D/ }4 d  S: T2 K$ m
import swarm.activity.Activity;
; Y# u# D2 y- Z) k3 q6 f( ^import swarm.activity.ActionGroupImpl;
- i, l. G5 D) S. S5 p' limport swarm.collections.ListImpl;3 [" T2 A' W) J/ Z- t, [
import swarm.defobj.Zone;
- U( a+ ?7 D5 f0 t8 z+ Bimport swarm.Globals;% M0 x7 [* Q& k
import swarm.Selector;
/ i  K: U) B% _% @7 _6 m+ fimport swarm.activity.ActionGroup; % Z: q# R. t$ k
class Agent {
% m4 B' ~; i% }' D& H: M$ _, y        char id;9 T+ d- V  t2 {6 \" y) ]
) g1 f# o. L4 v4 d- N4 p& P
        Agent(char id) {
' i2 P3 l7 i* t                this.id = id;2 g7 @0 U! k9 l# L  ]
        }
+ [) k  @; \+ P. N8 m3 G8 x; V+ c% D9 J- D
        public void agentStep() {
+ y) W/ J8 d9 K$ z8 x                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 N, L$ j: z5 a' N! e$ o        }
  V- }5 e9 ?; f/ x( `% N2 J}
& E/ [& ?  R: W
4 g8 [$ b" z' H' a" X  |public class ActionGroupDemo extends SwarmImpl {
- L% L9 u1 [% j# C- i5 `  V' k        ScheduleImpl schedule;
# T# a' \5 n% d        ActionGroupImpl actionGroup;
( |( S+ s7 J) C+ B2 u" U/ J        ListImpl list;
) Z% ^, v/ N# x7 V  t5 ~        char Id = 'a';
2 M' }; l" e5 z# P6 [/ }
9 A! L! f7 Z3 L, X        ActionGroupDemo(Zone aZone) {1 a0 Y  u# q$ t: ^. D  b
                super(aZone);' Z" U' X- x6 T; Z# g
                list = new ListImpl(aZone);4 H  b2 z& y/ A: H9 Y3 w4 x3 u  [! d
                swarmSetp();1 J& y( C/ e: K6 C
                actionGroup = new ActionGroupImpl(aZone);
! k6 B7 C! ~2 {% x7 Z                schedule = new ScheduleImpl(aZone);5 `1 k* D' k. `. z4 L' t
                try {
$ t/ s6 A* }- w& |* g$ w2 O                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& y( j8 j! F1 u0 i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( W7 [  ~0 v+ `' R; P4 v, q                        2 n: @; k3 }8 }# T5 B
                        actionGroup.createActionForEach$message(list, agentSel);$ L8 _& U9 m2 F; |
                        actionGroup.createActionTo$message(this, swarmSel);
3 I! K9 q- f" f' N2 Z6 t                        schedule.at$createAction(0, actionGroup);9 A8 ~2 S- O6 H  u' l
                        schedule.at$createAction(1, actionGroup);! p  S* j9 v8 F) f( _0 D& `& {, l
                        schedule.at$createAction(2, actionGroup);
8 I) P+ K1 ^' e- V
0 N! j0 I4 J9 ^8 c9 j1 i                } catch (Exception e) {
4 x" H& b: H; n# W  S' b                        e.printStackTrace(System.err);6 B- Z8 {8 |+ N7 g
                        //System.out.println(e);' h: n9 L& |' v$ L  a1 U" B
                        System.exit(1);
$ K( W+ X  N+ k; X0 M                }
6 Y6 c: p; f+ i! `, e2 y4 X7 x1 ?3 ~

4 V9 I: g$ \  Y" c        }; N( w& u/ {4 L0 f/ O. L
% W5 c. @. J- v' q# H% K
        private void swarmSetp() {2 |% p9 u, l2 W/ d6 `
                list.addLast(new Agent(Id));) D8 q% W3 j1 G/ h9 j
                Id++;3 _1 [& t" o6 D6 ?0 T8 N( ?' J
        }
$ R8 J- f7 w: t( Q- _
: K2 A% ~; `1 ~9 K        public Activity activateIn(Swarm context) {
  C  X% r& `- j5 p: R# q) X                super.activateIn(context);
& {0 J; f+ a: x8 w  ^6 @* R  u                schedule.activateIn(this);4 h; C8 H0 r3 r+ J0 n: A
                return getActivity();1 t9 C; K0 |. J1 O% K+ C
        }& q5 P! c7 g! [$ e, L& V- ~
. h& ?+ ^" d( Q3 p* N0 ?+ @
        public static void main(String[] args) {1 i1 P9 K% T# `: k5 \/ h
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& y, S; e0 t  ^0 c+ Z5 O: M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% z+ D2 V  s$ _7 a, P! l0 H1 |
                swarms.buildObjects();
* E& `* W+ F  Y; G2 U2 P                swarms.buildActions();4 n/ Y8 Y) t2 ]& k, k
                swarms.activateIn(null).run();0 O, c4 v8 y. A
        }
: w2 k% g2 N: C7 A2 k0 x) @" _9 [2 \4 ?  v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 01:52 , Processed in 0.017098 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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