zoukankan      html  css  js  c++  java
  • 记一次关于springboot的netty版本冲突问题

    冲突的地放其实很多,大概都是类似,找不到哪个方法了:

    类似于:

    Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
    19/07/02 16:07:02 ERROR boot.SpringApplication: Application run failed
    java.lang.NoSuchMethodError: io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(ILjava/util/concurrent/Executor;[Ljava/lang/Object;)V
            at io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:52)
            at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:87)
            at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:82)
            at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:63)
            at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:51)
            at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:43)
            at com.ime.gbt32960.InfoServerApplication.run(InfoServerApplication.java:33)
            at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:797)
            at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:781)
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:335)
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:1255)
            at org.springframework.boot.SpringApplication.run(SpringApplication.java:1243)
            at com.ime.gbt32960.InfoServerApplication.main(InfoServerApplication.java:29)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
            at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
            at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
            at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58)

    其实发生这种事情,靠猜没用的。最简单粗暴的方式就是通过maven打印依赖树的方式,去查看;

    比如上面的错误,是因为netty版本不一致造成的。那么就打印依赖树,找到所有netty。然后去掉不是你导入的版本就行了(因为应用的框架多了,内部通信啥的,很多都会选择netty,这就导致你的版本不一定与内部框架的netty版本一致的原因);

    查看maven的依赖树方法:

     mvn dependency:tree 

    然后搜索netty。就可以看到版本不一致是哪个框架的

    如果知道了是哪个框架的,那么使用maven的排除,即可:

    例如:

    <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-common</artifactId>
                <version>${hadoop.version}-${cdh.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.google.code.gson</groupId>
                        <artifactId>gson</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.netty</groupId>
                        <artifactId>netty</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>io.netty</groupId>
                        <artifactId>netty</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>io.netty</groupId>
                        <artifactId>netty-all</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
  • 相关阅读:
    【bzoj2821】作诗(Poetize)
    ZOJ-2112-Dynamic Rankings(线段树套splay树)
    POJ- 2104 hdu 2665 (区间第k小 可持久化线段树)
    hust-1024-dance party(最大流--枚举,可行流判断)
    hdu-3046-Pleasant sheep and big big wolf(最大流最小割)
    POJ-3294-Life Forms(后缀数组-不小于 k 个字符串中的最长子串)
    POJ-Common Substrings(后缀数组-长度不小于 k 的公共子串的个数)
    POJ-2774-Long Long Message(后缀数组-最长公共子串)
    POJ-3693-Maximum repetition substring(后缀数组-重复次数最多的连续重复子串)
    spoj-694-Distinct Substrings(后缀数组)
  • 原文地址:https://www.cnblogs.com/niutao/p/11121473.html
Copyright © 2011-2022 走看看