设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12927|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# v; u1 g' D9 G% o; f. ]
( r  P3 U7 J) K4 v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 H2 B) Y+ g/ B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 F$ R8 h7 Q/ h2 T5 u2 D/ ]swarm.SignatureNotFoundException
0 j$ b5 |. Y& f, N9 k        at swarm.Selector.<init>(Selector.java:76)8 L3 \) G/ }& O0 V& g8 A
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 c7 b, b* Y' t: z
        at ActionGroupDemo.main(ActionGroupDemo.java:67): j- M& U- i1 I8 i* X3 V. {- p
* t7 f, `3 I* m: b. l. Z; k. u
+ u2 v; U7 H- ^+ |
import swarm.objectbase.SwarmImpl;! x3 s. a! c$ t( c
import swarm.objectbase.Swarm;3 n6 ^( I+ A$ k6 p! y
import swarm.activity.ScheduleImpl;0 a  f( W( K6 [
import swarm.activity.Activity;
9 c5 V+ O5 C) cimport swarm.activity.ActionGroupImpl;6 T! \/ `# J% {1 B- g0 p% o
import swarm.collections.ListImpl;
% w  [5 b5 ^$ h( v+ M$ {import swarm.defobj.Zone;
- P( [) U! P2 b9 _import swarm.Globals;3 @7 w, x: W9 A
import swarm.Selector;
' ^6 x# E: N$ G3 e2 h( d3 Timport swarm.activity.ActionGroup;
6 Z" {& \( t' ]+ u" s9 Y' [0 Bclass Agent {& f& G0 \& J1 T  j
        char id;
1 ^# I, ?8 @/ }) y! D3 i6 c. H( m' u% v! w! w
        Agent(char id) {- x$ \4 |8 t. ?, _, }' V9 b
                this.id = id;
$ S" g% t+ W$ L* q" o        }
4 S& P* R6 C+ |) G# i* B
" x' x- m+ v6 z! z" q4 U; n6 ?0 Y        public void agentStep() {
) m- y$ `; |, _  v" Y                System.out.println(id + ":" + Globals.env.getCurrentTime());* j; O1 U/ r  w' x" ]& p* `
        }
& g; n4 t* C; v1 w/ t/ H  ]2 I& |}
& e2 ?$ j" w5 V4 x5 K& Y
# D  i- N% j/ {( U& R" ipublic class ActionGroupDemo extends SwarmImpl {9 s8 r9 [; t9 U
        ScheduleImpl schedule;
6 ?/ k3 @; c6 B* Z8 K        ActionGroupImpl actionGroup;
3 U  ?$ n5 N7 Q* F( O( q- S1 E$ X        ListImpl list;
; J6 I/ B- A2 D0 o  Z( V        char Id = 'a';
- C  r! W( G  \, Q* f* Q/ n& M3 D
        ActionGroupDemo(Zone aZone) {
5 l% M. \7 \- a, V  n                super(aZone);
+ [9 S( a3 g: C% g+ c# O- o+ v4 Z                list = new ListImpl(aZone);
4 |% m; r% Z; U, z8 w! f                swarmSetp();) q" e4 Y) r- Z4 P' K8 r- o& b5 a: A
                actionGroup = new ActionGroupImpl(aZone);
& i4 A$ h4 a# R, ~: R$ g                schedule = new ScheduleImpl(aZone);# O; j# e2 n6 E
                try {
5 V& C) B0 \  G3 ~1 T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ y; \/ [, a4 L5 [; N                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ Y* ]+ h7 ^4 K; |                        ' e& f/ L! o+ O. s+ `, M
                        actionGroup.createActionForEach$message(list, agentSel);
0 i0 p  z: w- m0 d/ b, _                        actionGroup.createActionTo$message(this, swarmSel);* b5 v# b- g, }# t) w
                        schedule.at$createAction(0, actionGroup);" X" P6 Q9 A2 |& I& I# O( N
                        schedule.at$createAction(1, actionGroup);
* h6 b. ^- I1 ]: L. G, ~( s& C9 U' U                        schedule.at$createAction(2, actionGroup);2 b7 j7 F& o( s. E6 g

. a, z1 V- k7 P% Y2 D- S7 i2 a* I                } catch (Exception e) {: q9 ]: F0 c- r. a& [" [3 t/ w$ d
                        e.printStackTrace(System.err);( Y/ V( b4 `9 U* S6 F
                        //System.out.println(e);7 l# j* C6 s! R9 }3 m
                        System.exit(1);
0 [0 q( J6 C/ }# I% S# a0 A" a                }
8 s1 y1 E  F! p% C$ T- f2 q4 |" X4 C6 m2 D8 L
- I; L$ I- B+ W$ r. Y8 t$ b: N
        }
7 q# t$ T" c3 D0 O( t: B8 t" m* o, }8 b' k
        private void swarmSetp() {
6 A2 _9 Z+ _, Q3 @/ z2 e/ L                list.addLast(new Agent(Id));; s7 O; H/ O! T0 F- N% s2 x
                Id++;. k& ?5 }+ c  r) B3 ]. H) O
        }$ v6 d9 }4 G1 E6 d4 }

' t, C0 f. S( v" y$ \; j) w        public Activity activateIn(Swarm context) {
- u8 n- d; }) K  U. e                super.activateIn(context);
0 O% |2 s: `3 y" l( x1 m                schedule.activateIn(this);
/ R7 F' O) R/ y                return getActivity();
3 K' N$ }7 F# @# Z& \/ x) {6 p0 |        }9 W  G# ~0 ?* e

$ k; ]5 e! K1 \. y* V! ?        public static void main(String[] args) {' F; r3 E6 L1 U- U, z  t% K# j
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 v2 f7 W% h9 O6 e) p# O+ L" W2 J                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 X" |7 R6 b3 j$ R# ?6 |
                swarms.buildObjects();
" M: D0 {6 O8 ~/ N, t/ q                swarms.buildActions();/ H2 R4 F; Z" l$ g" T  E, k
                swarms.activateIn(null).run();% K) e- D- ]; i8 p! [& ~
        }
& ~" p, g' h: P: F3 C, a$ @7 `2 k$ q% a% a1 y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-23 11:40 , Processed in 0.019028 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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