设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6688|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  Z1 x% H' y% i
7 ]2 s% Q, a7 p) e" t9 S) K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 }8 N4 [6 m5 e+ R/ @1 N- S5 N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." Y* K& ~8 Z/ H, k% C9 a9 U
swarm.SignatureNotFoundException( x6 M7 }* Q* _' U0 V
        at swarm.Selector.<init>(Selector.java:76)
  F. B( e* b- ]0 b, I7 c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& M2 o) ^! Z: k        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, T2 C% X) g. @3 ]8 F( @3 I7 l! T' E" h1 D1 w
" h- n8 H0 z" w! v  x$ W( F7 D0 c
import swarm.objectbase.SwarmImpl;
8 A% X7 m2 w/ Q& bimport swarm.objectbase.Swarm;
& J' M5 |5 x: Z+ I6 Bimport swarm.activity.ScheduleImpl;6 h1 Z" G) V* M
import swarm.activity.Activity;
- u7 e5 i9 Q, h. h  l3 zimport swarm.activity.ActionGroupImpl;
+ v/ C, b: Z' v: g% u2 _2 Y4 Z4 Simport swarm.collections.ListImpl;
9 r3 K8 |  `; v5 a0 k! {) {import swarm.defobj.Zone; 3 [& j0 r( ^) I* f3 a3 V3 l% }
import swarm.Globals;$ f2 |3 i* e9 f$ _* n' B' W( }
import swarm.Selector;
7 g% w! Z$ y$ Z8 h$ d1 aimport swarm.activity.ActionGroup;
+ j9 o6 v; P& U+ H% gclass Agent {
/ v' s/ L- V! A+ J/ W* g2 r        char id;- \' F" \  e3 Q
; b! N2 D0 I* _5 p
        Agent(char id) {1 ]4 ^/ ^7 [! E
                this.id = id;" u# `% o* r; r$ {0 ?2 K
        }8 Q* L6 h; P: L5 `* C/ F" K6 x( h

6 R' X6 }2 |  N; q3 @        public void agentStep() {
* T! @! C% E: w  ^                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 u0 ]+ E! B+ u) G* ~' e        }
) l3 O$ ]( f% Q' ]}( O$ V7 C4 C1 L/ d% A

5 U/ A0 I8 b( Kpublic class ActionGroupDemo extends SwarmImpl {
3 d$ T" U5 D  L! U        ScheduleImpl schedule;
8 t$ p, }) X4 e$ g  U4 ^7 `, e3 T1 M        ActionGroupImpl actionGroup;$ k. p3 _4 ~3 x6 K7 m- v9 a3 ~
        ListImpl list;
2 S2 m3 Q9 z( u7 i( Y# ~        char Id = 'a';
# f4 f. l9 O- v6 Z+ C, A; o: F9 d  Y8 @
        ActionGroupDemo(Zone aZone) {* m/ Q& A* T' \( `  P
                super(aZone);: i1 o, z. k8 V- ]3 V( h
                list = new ListImpl(aZone);1 I( u. Z. H; t9 q
                swarmSetp();
; M/ L2 o- a2 }- {0 L                actionGroup = new ActionGroupImpl(aZone);
1 I+ o3 @+ E2 C+ T                schedule = new ScheduleImpl(aZone);% V4 ?: {. \; H& y8 i
                try {
3 o/ e. n! Q. C, ]4 o) l6 ^                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 T% _% o- i" I
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 |+ p! n( u9 n- U! ~/ S* v% _
                        
/ P8 S9 k: Y' F0 L                        actionGroup.createActionForEach$message(list, agentSel);
3 X; ^( l3 I0 U# E                        actionGroup.createActionTo$message(this, swarmSel);: P6 O- q3 L2 h/ t( M. h* ~
                        schedule.at$createAction(0, actionGroup);
0 w& W6 p' c# L                        schedule.at$createAction(1, actionGroup);
6 G8 K1 c! S( k                        schedule.at$createAction(2, actionGroup);. I6 u/ V* B6 r( m5 m4 V

) Z% S- P# Q( _, K( x" [; a                } catch (Exception e) {' k: c* H9 O: o- ]
                        e.printStackTrace(System.err);
8 m9 T: u+ I) y2 ]                        //System.out.println(e);
5 w* T/ ^* f& ^4 w7 a  @                        System.exit(1);1 O- r: w! n; R& r; c' X
                }1 n5 E, T) V, _1 Z

+ ]9 v. Z- W8 X+ i
3 \& [. h+ b7 L: l        }
3 h9 L1 e4 ]( N( D2 P- k8 [, l5 T7 |9 K+ W
        private void swarmSetp() {
8 S7 j1 q0 X' W- d                list.addLast(new Agent(Id));
' O: @, P2 G; b. t                Id++;3 T1 T) D" N7 v2 u4 e
        }2 e& e; q* ^. i8 w' C5 U

, b/ Q/ N6 k: h1 J4 b) x        public Activity activateIn(Swarm context) {
7 |# P3 r7 m0 l. u. h                super.activateIn(context);5 k6 {2 H5 W3 S) }- T
                schedule.activateIn(this);
# _4 j5 q/ _+ T* i  G                return getActivity();
" R. U( i- V$ [0 [1 W        }" @- q+ ]5 ^! d+ Q
- r7 K" [6 T; M) O3 b+ M
        public static void main(String[] args) {
7 {2 z: h2 z, _4 k; w5 @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 w% F; G, K( ~5 Y6 a                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ m) P) q# q, Q3 I/ t                swarms.buildObjects();
9 N; I6 ?8 J% C. C/ `2 e2 @4 b6 y% l                swarms.buildActions();
& j/ G0 _! e. H4 s                swarms.activateIn(null).run();8 }8 P+ v$ Y5 \  G: r9 b
        }
# j$ l7 T/ C& M, i- T7 S! a' E
) {1 `; X8 c8 r2 G( E: T7 q& C}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-5 18:24 , Processed in 0.016684 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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