Linux 环境下 无法加载 libnetty-transport-native-epoll.so

图片说明

pom.xml 依赖如下

        <dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-transport-native-epoll</artifactId>
            <version>4.1.23.Final</version>
            <classifier>linux-x86_64</classifier>
        </dependency>

    Epoll.ensureAvailability();
        EventLoopGroup group = Epoll.isAvailable() ? new EpollEventLoopGroup() : new NioEventLoopGroup();
    b.group(group)
                    .channel(Epoll.isAvailable() ? EpollDatagramChannel.class : NioDatagramChannel.class)
                    .option(ChannelOption.SO_BROADCAST, true)
                    .option(ChannelOption.SO_RCVBUF, 1024 * 1024)
                    .handler(new ChannelInitializer<NioDatagramChannel>() {
                        @Override
                        public void initChannel(final NioDatagramChannel ch) throws Exception {

                            ChannelPipeline p = ch.pipeline();
                            p.addLast(serverHandler);
                        }
                    });
            // linux平台下支持SO_REUSEPORT特性以提高性能
            LOGGER.info("Epoll.isAvailable():"+Epoll.isAvailable());
            LOGGER.info("Epoll.unavailabilityCause():"+Epoll.unavailabilityCause());
            if (Epoll.isAvailable()) {
                b.option(EpollChannelOption.SO_REUSEPORT, true);
            }
            if (Epoll.isAvailable()) {
                // linux系统下使用SO_REUSEPORT特性,使得多个线程绑定同一个端口
                int cpuNum = Runtime.getRuntime().availableProcessors();
                LOGGER.info("using epoll reuseport and cpu:" + cpuNum);
                for (int i = 0; i < cpuNum; i++) {
                    ChannelFuture future = b.bind(port).await();
                    if (!future.isSuccess()) {
                        throw new Exception("bootstrap bind fail port is " + port);
                    }
                }
            }

yum-install 一下

代码不全

都提示你file not found了