设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8884|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ p7 g1 V! R( v7 h# x. k; _% x; U: q" C, `% F3 W9 z% E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 ?, M% b7 f. ^- S9 W$ x  J- U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 z7 e$ v$ [8 `4 E7 ~2 T
swarm.SignatureNotFoundException+ ]! a) x1 ]) W
        at swarm.Selector.<init>(Selector.java:76)) G4 ]* H# P8 h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 A! U# N3 n& A% T' I! I        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 }* S0 c# w! C4 S5 o$ V$ B, [1 R* O& L0 a& K- V

5 g3 D3 P, {$ a+ Eimport swarm.objectbase.SwarmImpl;
4 s9 L# G9 J4 \3 M/ Gimport swarm.objectbase.Swarm;
: {# |2 ~; ]% ^3 d4 r9 uimport swarm.activity.ScheduleImpl;. Z7 [0 k1 V1 t# H; A/ r
import swarm.activity.Activity;
3 U8 _' {" r7 O3 Eimport swarm.activity.ActionGroupImpl;9 }! k$ n) G7 W9 @0 E
import swarm.collections.ListImpl;
/ k- w, t: d/ t8 Simport swarm.defobj.Zone; 0 i6 [: m4 r4 \  @( m: {
import swarm.Globals;
0 x. P/ \) I8 |- ?. \import swarm.Selector;1 S# G, Z2 i% O! Z2 C# v$ C
import swarm.activity.ActionGroup;
2 X0 u& z# Z8 o$ R: nclass Agent {
, W. a* R+ {6 }( `6 G        char id;- |: o; E5 k! c; N, F8 ^" \" d7 N

) ]  G0 b, Q3 F) m) o8 {- {        Agent(char id) {
& }1 f$ u* c) R) m4 W                this.id = id;) L3 h2 e; x) l* }
        }- K$ R2 }2 A3 a$ e9 g( s! d( E; E
& ~5 Z6 k% E, Y2 \
        public void agentStep() {
5 z( y. a# ?, h, w( }                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ D4 u( K  t) W. Y8 m        }( S2 D9 N+ d( V8 M( |3 T
}4 G$ z% N6 b' [9 t9 [1 a, |
# l: m) t8 c3 x- Z9 C5 y5 P
public class ActionGroupDemo extends SwarmImpl {3 _  W! W7 i* P, B5 e; i& b
        ScheduleImpl schedule;
6 d/ f$ D5 N! c& H. e9 v+ M3 y        ActionGroupImpl actionGroup;3 t8 N& O7 }" d. v4 t
        ListImpl list;
+ n5 E0 M, M- l3 \        char Id = 'a';# B4 C* w% e/ D3 E- }; V

! v. h& T' z, |; T3 q' g        ActionGroupDemo(Zone aZone) {
- ~/ o" @% b: f1 v                super(aZone);; I6 d* m  N: u
                list = new ListImpl(aZone);8 b# y7 K* d% z6 O5 c& U
                swarmSetp();
" x3 c: w+ [' p9 V                actionGroup = new ActionGroupImpl(aZone);, `$ k5 d# i$ d: I7 n# w
                schedule = new ScheduleImpl(aZone);
, n! K+ ]! K/ ?                try {
4 }4 s: r) g% ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 i6 C) t: t3 ]$ Z8 D                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' S# o) q% Y( R  ]7 h4 i/ R. p" a0 |
                        & Y& e, l. E9 ~" W5 l+ d1 e
                        actionGroup.createActionForEach$message(list, agentSel);& ^6 ^) F0 h$ Q! o6 e9 g  |* |
                        actionGroup.createActionTo$message(this, swarmSel);
) p, S- ?- \) X5 [                        schedule.at$createAction(0, actionGroup);- @) P% w. l) R' W1 O5 A
                        schedule.at$createAction(1, actionGroup);. Q  t* o& b3 }, E6 n+ Z+ s4 m
                        schedule.at$createAction(2, actionGroup);
7 Y3 {4 j, E5 u3 {* r* N7 w
4 F' I1 f0 i# _* C2 `$ D  F                } catch (Exception e) {2 J# I, m0 t3 }2 q+ h* w; B
                        e.printStackTrace(System.err);$ m1 i& \' b4 T
                        //System.out.println(e);" X" s. I$ T- \; s5 h
                        System.exit(1);
4 F  C9 Q; v# E7 y+ A1 F- A                }
, ?% R# K) ]- i3 r: s1 o
7 i: \* @. w. y+ c, P* k4 K( o( h) `; G) L% m8 t: o3 O7 m7 ?
        }
. t! i, l3 E( D8 h2 R2 b/ Y1 e* W
+ }. x7 f5 Q1 u! @5 F        private void swarmSetp() {8 h+ `( a5 g3 i) `8 ^
                list.addLast(new Agent(Id));! J% L  a: S. H- P2 l; y0 l
                Id++;
! B. {% e0 g8 A" s+ K9 t5 |, X        }
' `5 A- d" q! r
9 T5 H- Q7 f$ y) I9 b/ G3 z# C+ [0 U        public Activity activateIn(Swarm context) {0 @$ ?9 i$ g0 J- k6 F6 k. u8 @+ d
                super.activateIn(context);. `- I, h7 x* i) D4 W
                schedule.activateIn(this);- j" [! @. G! i  u
                return getActivity();
' |, _2 s" q5 c        }- B6 |  {' u; |% i
4 D- x0 l9 }7 ^: x- j1 _; P
        public static void main(String[] args) {
0 S! b. p5 N% p. A. B# y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( ?# A' I6 I+ x. |7 F
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* B, r9 G  X# _5 J% L( r' U                swarms.buildObjects();4 f7 W; E9 ]  t2 y% l- N( i
                swarms.buildActions();- @% p& m* f) h
                swarms.activateIn(null).run();
" L1 r5 V" U' W7 M3 H6 {' M        }
9 e# w8 H9 U* S$ r+ V! c! M7 I: j( C9 J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-25 16:58 , Processed in 0.018349 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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