设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12839|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 m. C  l5 t  h, h

8 S- ^5 \; W" J& d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  s: a. B3 @5 y9 p3 @- K" A' `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: x  E  i* l7 H! w
swarm.SignatureNotFoundException
3 n! T5 W0 P8 t% m; A        at swarm.Selector.<init>(Selector.java:76)) F* s9 _$ v) E  x, ~) o
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  D- J  W6 o, F5 Y  E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" ~+ }% k( D; v: d& L# l, h* l* i9 [4 W

& p2 d" q4 X" fimport swarm.objectbase.SwarmImpl;' o  j; f% A! [/ \3 P
import swarm.objectbase.Swarm;' X) Y  d+ r& Y& f9 l' A! w
import swarm.activity.ScheduleImpl;
' S& n: d6 }3 s+ s" b# Eimport swarm.activity.Activity;" ]' p5 H" L! |+ |9 P5 f
import swarm.activity.ActionGroupImpl;$ t, D6 i5 a- `
import swarm.collections.ListImpl;
+ o2 n  p; L8 a0 ^. A1 Himport swarm.defobj.Zone; - ~1 a. O! v; U1 G
import swarm.Globals;. Y4 o7 ?0 ?, Z
import swarm.Selector;# q1 O. f8 v+ D9 O7 @+ f
import swarm.activity.ActionGroup; / F/ [' W# v/ q" U- v  \
class Agent {9 P$ z3 S: Y( Q# Y. \/ s
        char id;
' B) o4 c  X9 r2 R: ?# r1 U9 h7 H% g5 ~( Y4 X. \6 V& u% p
        Agent(char id) {
3 o5 h4 ?3 N4 F$ j+ f                this.id = id;
6 m  J7 D- h' h* S- H: b& z' }        }- }7 N5 W3 |# ]# ?2 ?6 p0 \
* z/ `6 C* n$ ?( B
        public void agentStep() {8 O- l1 z! r" t) ^. u9 ]6 z1 Q/ n
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# E( I6 ?1 b, L6 ^+ A) A5 Y' C9 O- U        }
7 H' z% e, x( G7 Q& F}2 J: H' C2 D9 K( e0 N

- j9 |4 ~! z; ^5 e# e1 u- Bpublic class ActionGroupDemo extends SwarmImpl {
* \% ~8 q: Q0 W. A        ScheduleImpl schedule;
' D! @5 @$ ]$ c; i) T- `# C# M/ L        ActionGroupImpl actionGroup;& g- L" O# M% p+ ^) x4 i9 q
        ListImpl list;7 g8 R1 `0 c+ a+ S$ x- }) f8 \
        char Id = 'a';
' e  a) L! K  \. Q% H. q$ A- ^: o: ?* [5 `. v; K4 i: V1 M
        ActionGroupDemo(Zone aZone) {8 f; `# _2 `9 v1 ~  l0 [# @  Z4 }
                super(aZone);" j/ j8 }) w3 V# p' }& h
                list = new ListImpl(aZone);$ u! |! [5 ^/ g' m0 U, d
                swarmSetp();* t1 x# T2 Q+ z7 S" d% ~$ w
                actionGroup = new ActionGroupImpl(aZone);" a9 v* w! Z' h5 M, e
                schedule = new ScheduleImpl(aZone);
# h* o7 i* H  z' b& i                try {7 [8 ^3 n- p, l. E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* U) ^' Q$ P$ Z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! J9 K, p9 f, U) x% e& S+ \% T                        
7 o1 A- ^( G6 o; x                        actionGroup.createActionForEach$message(list, agentSel);
; `: f$ ^- ]) ~1 b% T! j1 [3 v- y* @                        actionGroup.createActionTo$message(this, swarmSel);* `: Z9 P4 F- a. X1 H, E
                        schedule.at$createAction(0, actionGroup);
) `6 z. g7 ?* @; w2 l% P                        schedule.at$createAction(1, actionGroup);) k( v% T5 ^5 ~4 r
                        schedule.at$createAction(2, actionGroup);/ K. D" H( r5 v0 F* ^# @6 d+ ~! C
& b) w& T/ f7 r; M. k& e
                } catch (Exception e) {5 H. u7 J3 X7 A
                        e.printStackTrace(System.err);
  b! q6 n% O$ E) b8 D7 Q, K                        //System.out.println(e);
3 m5 w' Z- R# @                        System.exit(1);
+ K* Z2 e* }* Y4 x5 t" |% y                }! c% {3 e5 e' z5 D' r

6 [7 Y' h2 Q1 H5 G" s
1 C& D- w" L9 N. \5 q        }
  D4 f0 k& |: Q) D! y) r* X; `9 h) p4 K9 {0 E! u
        private void swarmSetp() {
+ j! I$ x2 b+ v* v- a                list.addLast(new Agent(Id));" D6 r. J. B# X$ x3 |# k
                Id++;% s7 G% C# @* l
        }4 c: P! l) O; p6 ?
" L5 j& h- p# V1 D  B
        public Activity activateIn(Swarm context) {
% i& \  ^% L7 U7 \$ V. f                super.activateIn(context);' [& r5 {: K+ b1 H
                schedule.activateIn(this);
) D: [8 p9 @% h& T  E& j                return getActivity();3 {7 S& D5 @4 j5 b3 X: f
        }3 w2 D: t0 s) D. \8 P
- \( H9 C4 Q, T2 p9 }
        public static void main(String[] args) {0 ~+ Z  M+ N. E4 p: |0 X0 W
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) m9 \# d$ O; Y+ j  R
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& N9 h7 J2 Z: W5 ~$ s* n
                swarms.buildObjects();
9 p, i7 J6 P, D  X                swarms.buildActions();7 g5 V/ L5 C# i) J( T0 }: f
                swarms.activateIn(null).run();
% `+ X9 r, V. v; @& R' w5 M        }
+ E- G8 z/ v8 y5 [' |( d1 E, B9 E6 C: c& a+ |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 23:03 , Processed in 0.017311 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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