设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8887|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) g% g. N: O' f/ e1 A8 P; c
) A- S5 h$ ?, V+ G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' A# R) O: F2 [. V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& I/ o) ~5 e% B  e* o
swarm.SignatureNotFoundException. [8 h; T! L. e
        at swarm.Selector.<init>(Selector.java:76)
) G. n  L# T% U. S* m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. V! U0 n  t3 C* X9 q& T4 x' |        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 d0 ?* I) v. k# `4 T" a3 q

2 G- ]) F: W7 i1 s; Q' k, v7 r. Y
; ]9 n1 z3 n5 I$ e7 B: \. ?import swarm.objectbase.SwarmImpl;# }9 Y! x, Q7 T& c' E
import swarm.objectbase.Swarm;; d, a6 f" u% R3 |' S; w- C
import swarm.activity.ScheduleImpl;
' M" Q! l5 {2 |/ W# Pimport swarm.activity.Activity;
' |! ^& W% C: Q3 o$ Fimport swarm.activity.ActionGroupImpl;* @; Y/ \4 k. x0 a0 G
import swarm.collections.ListImpl;% }$ |$ ^/ m9 A" J
import swarm.defobj.Zone;
, V5 b4 Q9 Y9 `3 b* aimport swarm.Globals;5 x2 D, S- R# I2 T8 Y: q0 ]) Z
import swarm.Selector;
% c) O$ e- L, f' j; H4 r( S6 Qimport swarm.activity.ActionGroup; ) Q! C. a7 c7 I5 ], ~
class Agent {& n# n3 P% i5 q$ D8 g$ Y9 `
        char id;% ^5 \) E9 c+ _6 w0 R
+ @# ~0 @& a9 K: f( j4 R4 Y
        Agent(char id) {; J* m5 s  e8 G2 z- B0 ~7 h/ H' L
                this.id = id;
* ], X6 w" v% D2 q& A        }# y8 y8 j! e. Y4 d8 i- z5 M

+ }7 Z# i. Y& W) ^9 B5 M        public void agentStep() {) B2 m$ z) U5 C; e' k. X8 J* w
                System.out.println(id + ":" + Globals.env.getCurrentTime());, y6 w: X3 v, }8 T$ w
        }
* G* R$ M# j  H" W3 o}5 k. W% N  D  y  L# c- ?7 `
/ ^2 ]. M  f8 ^% ~: C
public class ActionGroupDemo extends SwarmImpl {7 Z& `7 ~0 |8 L% [
        ScheduleImpl schedule;" b, L8 A# r2 V! B  Q4 T, o
        ActionGroupImpl actionGroup;
" l7 }6 ~# I9 t" O2 s; Q3 q4 L        ListImpl list;
6 N* W, E! t. V- a0 M        char Id = 'a';  v8 v. Y" g, J, C) j

3 M( q6 C' {; d  n8 l        ActionGroupDemo(Zone aZone) {
. ^' j7 D4 `+ x                super(aZone);: F: S9 q0 {+ A' W
                list = new ListImpl(aZone);& D* X" m0 L+ j: c; w% \* b2 T
                swarmSetp();
0 v+ W( n6 r: @# n0 t) j                actionGroup = new ActionGroupImpl(aZone);9 Z$ T2 Y7 v5 L) M) f
                schedule = new ScheduleImpl(aZone);
- c, i0 q& U# g, y) [/ Y. N6 P                try {$ _3 f0 k. x) M7 f
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 [' S. c. z, h; i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 ^6 l& }7 @) L
                        
# U5 I7 I* e2 J+ i                        actionGroup.createActionForEach$message(list, agentSel);! d( w( p+ O1 O: `, P+ j. i
                        actionGroup.createActionTo$message(this, swarmSel);
& D& ^! b% C3 B1 a                        schedule.at$createAction(0, actionGroup);
& f: @) [0 I7 O, h                        schedule.at$createAction(1, actionGroup);
1 u0 v8 A% J3 y* O' t( d8 Q                        schedule.at$createAction(2, actionGroup);  E. S  K* M% t* S2 J  }) t5 b" S
' C& n9 d8 ]1 Y6 x+ [# m& p; X  L
                } catch (Exception e) {$ B, ]8 E7 e, e2 I
                        e.printStackTrace(System.err);
: ]3 ]4 n% h7 b) f* V7 J$ ~0 d& W                        //System.out.println(e);
0 z: a# e6 X" d! N: T                        System.exit(1);
% ]" V; y3 Q$ x) ?3 O% |. A2 A6 J( {                }
" x% l! b- p* Y, @9 K
) m9 Y1 a) k2 ^- p" s, ^) W9 a0 f
        }. h: j- F- }3 [; o  L3 l4 o
  s2 ^2 k3 K8 O3 W, P' I
        private void swarmSetp() {
- n9 f1 t2 o: E                list.addLast(new Agent(Id));) i  F$ _6 t; C! F# b# ~; F
                Id++;; Q. y' x* r/ j  S. g1 e" b
        }! B  T6 K5 O" r& j

% _! U" B, s6 z1 V8 }: ?        public Activity activateIn(Swarm context) {" U9 m- J0 \$ P; {; v( C
                super.activateIn(context);
! V' b, ~: M4 G& |* x                schedule.activateIn(this);
* N9 V/ }2 }0 e                return getActivity();
0 V$ c7 T8 I/ B4 O- C* q        }4 t% c6 S  R; {
8 {9 Q+ M* B7 i0 N& d- d  T
        public static void main(String[] args) {
6 p5 K  Z, ?8 T; M' C- }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ j$ ?+ ?4 |, x1 F" d5 \                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 q  Y# G( d- E% x; x
                swarms.buildObjects();
# O7 x3 m1 W% Q' {, W                swarms.buildActions();9 I4 p+ _. A% o& E4 ]  f$ S
                swarms.activateIn(null).run();4 r9 q5 n% I$ {7 _" Q' L
        }
% g9 n4 f% _) |' {3 s" X8 I4 ]- N& Q; v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-25 17:35 , Processed in 0.017549 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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