设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11766|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + A1 n3 o. n( Y
; V* u6 b# M8 m9 ~. `8 K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 v7 F1 T' z6 c% i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# ^2 X  u/ v9 [" _( h! N
swarm.SignatureNotFoundException
5 o* T3 l2 {6 m9 k" T& ^9 N        at swarm.Selector.<init>(Selector.java:76)' V. l7 B8 g. e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 a* L; `3 `8 V6 T. T        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 z) w" i' w% `- Y# p9 d% T- {" d: N+ D; D5 k5 y3 W
* X! v/ k1 C5 `- z6 n7 _0 X: P
import swarm.objectbase.SwarmImpl;( J$ q; r$ \( F! R% |
import swarm.objectbase.Swarm;, l! E) M/ Y8 W  h
import swarm.activity.ScheduleImpl;' ^0 E( d" \* U3 L: z7 s9 N& q$ A4 z
import swarm.activity.Activity;/ `! ^' Y7 @: F
import swarm.activity.ActionGroupImpl;" w! [' j% U2 g
import swarm.collections.ListImpl;
8 T# x9 a3 `- f) E6 J6 Fimport swarm.defobj.Zone; ) r, n8 i6 a2 a
import swarm.Globals;7 n* h9 D. D9 ]
import swarm.Selector;* M  |+ }1 Y5 o+ J! s# n  E
import swarm.activity.ActionGroup;
% z, ]9 V) n$ k( K( ]( Hclass Agent {
% \! G) u: R) j; b/ k$ K' f        char id;0 y' Z# A) i% R* }& s

& T7 t: }; S, A7 {- Q- i6 Z( D        Agent(char id) {+ ^, x. z. T% M6 N) f
                this.id = id;! E; y( |& e! \: T8 r
        }% s) g+ ^; e9 N" w2 P

( T% Q" ^) A5 w( d* ]        public void agentStep() {
. u/ d6 L$ s8 t8 L                System.out.println(id + ":" + Globals.env.getCurrentTime());
- Q' g; g) v$ X. i4 B% d        }
# w) ~# c5 r- E" H% @}8 \, o: T( |, y$ O
! d7 w3 I6 a- u# I4 l# `
public class ActionGroupDemo extends SwarmImpl {2 v5 @1 a0 p5 u+ W
        ScheduleImpl schedule;$ b5 G. n, q& Z3 S* p: H
        ActionGroupImpl actionGroup;, u0 R  u% m& Y
        ListImpl list;+ S+ y1 a7 K3 r7 n3 ^$ }/ r
        char Id = 'a';
9 c, {( g7 d( L/ }7 W# F% e, q# g: L" h: @. Z
        ActionGroupDemo(Zone aZone) {5 Y+ P4 G; q5 Y$ J
                super(aZone);7 |* m. g+ I" F5 y5 [
                list = new ListImpl(aZone);
8 v1 r4 S" ]" V0 l. u                swarmSetp();
( y3 a4 M4 e( {                actionGroup = new ActionGroupImpl(aZone);
; p- b( k" l- ^                schedule = new ScheduleImpl(aZone);, N3 u3 H0 F6 G# ?5 w  w
                try {0 a  u' g5 t0 y$ D8 A5 Z4 @1 ^% d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" E- \8 ^2 X0 x8 b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, I- O$ M- e4 e( Y) O0 j                        $ [( d- V, [7 K
                        actionGroup.createActionForEach$message(list, agentSel);
8 I( u6 ^+ Z& M& b, I6 s                        actionGroup.createActionTo$message(this, swarmSel);0 ^9 k% `5 m1 d; ~; J5 a5 q
                        schedule.at$createAction(0, actionGroup);6 W0 ]! m/ G( D8 G$ _
                        schedule.at$createAction(1, actionGroup);( `/ T  |) W% Q) Y% k- B; y. F
                        schedule.at$createAction(2, actionGroup);* Q1 c. o. ]$ M
3 ]! \! ^5 D) W/ Y; t) \9 L" b5 l
                } catch (Exception e) {
( N% V5 }; i% o' ^7 l" N  T8 f( }# O                        e.printStackTrace(System.err);
& I  Z+ p  Q7 @  w& f                        //System.out.println(e);
6 {* ~4 K, K2 k                        System.exit(1);% a7 F0 X. [, ~; s8 `" y
                }5 Y' I+ J3 [/ V' Y3 }7 p
0 v2 F$ U: o& J* B
- e: L; t' c. d
        }! h' E1 [8 X# e$ Q0 H
* ^6 e, f5 J; K9 ~0 F
        private void swarmSetp() {% K& [# C) r/ Z- M; d% }& \
                list.addLast(new Agent(Id));1 ?: j. R2 c# r5 D; t6 n
                Id++;
; a! g' a) A/ m5 h. D        }0 x( H$ y' s( p9 |$ M
9 g. w0 [8 c  j  a0 j
        public Activity activateIn(Swarm context) {& m; t6 A3 j1 [. Z  G- v
                super.activateIn(context);0 ^$ i# j. w$ ]0 T* K
                schedule.activateIn(this);6 t+ U4 M$ X. r2 H; N6 r
                return getActivity();: D* T6 @! Z, l1 p0 C# p( @+ r/ g
        }; v/ Q; Z2 P  i7 a: ~

/ ]- J  B0 B; H# l2 @        public static void main(String[] args) {
* j- D) q3 G& x+ a$ v5 c+ _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% i% K) Z4 X7 N9 V4 H7 u2 `1 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 M+ [2 h" _3 z, Q. k  }0 Q& Q                swarms.buildObjects();' c; d# n# B7 E. h0 ?) P! X
                swarms.buildActions();
- h  b  A* ]  t                swarms.activateIn(null).run();
4 u( O; o; T$ r/ ?1 v$ K- a        }
" Q2 g' I8 y* ~! K/ u, l  Q; j1 l& |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-21 03:30 , Processed in 0.020103 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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