请教一个关于 Maven 依赖冲突的问题 - V2EX
tangshiba
V2EX    Java

请教一个关于 Maven 依赖冲突的问题

  •  
  •   tangshiba Jun 5, 2018 3088 views
    This topic created in 2900 days ago, the information mentioned may be changed or developed.

    我们项目使用的是 Spring Boot,它默认使用的 org.json 的依赖是 20140107 版本,项目需要接入阿里云的一个 sdk,这个项目中使用的 org.json 的版本是 20170516 的,新增了一些特性,实际调用的时候就会报 NoSuchMethod 的错误。

    这种情况有没有什么解决办法?

    谢谢。

    11 replies    2018-06-05 23:26:20 +08:00
    JavaFirstMaster
        1
    JavaFirstMaster  
       Jun 5, 2018 via Android
    maven exclude 了解一下
    tangshiba
        2
    tangshiba  
    OP
       Jun 5, 2018
    @JavaFirstMaster 阿里云引用的版本比 Spring Boot 的高,在阿里云那里 exclude 的话还是会报错吧,又不好在 Spring Boot 里 exclude。
    justicelove
        3
    justicelove  
       Jun 5, 2018
    版本仲裁就得决定使用一个版本,既然阿里云用了高版本的特性,那就仲裁掉低版本好了, 如果没有向下兼容,那就不好弄了
    Foralrec
        4
    Foralrec  
       Jun 5, 2018
    @tangshiba 取高版本,不行就拆开做个 proxy 单独部署. 再不就用 jvm 隔离的框架
    FRankie222
        5
    FRankie222  
       Jun 5, 2018 via iPhone
    @tangshiba springboot 里面的没法 exclexclude 吗?
    wdlth
        6
    wdlth  
       Jun 5, 2018
    Spring Boot 的 org.json 不是 optional 的么……不显式引入是不包含的
    yanjinbin
        7
    yanjinbin  
       Jun 5, 2018
    idea 有个插件叫 maven helper 你把低版本的 exclude 掉就可以了 nosuchmethoderror 通常是在新版本的新方法在低版本找不到 也就是实际引用的是低版本
    lululau
        8
    lululau  
       Jun 5, 2018
    难道不是声明一个对 org.json 新版的直接依赖更好吗
    tangshiba
        9
    tangshiba  
    OP
       Jun 5, 2018
    @justicelove 架构师不是很同意这么弄。
    tangshiba
        10
    tangshiba  
    OP
       Jun 5, 2018
    @wdlth 我明天去找找看,可能其他项目引用了。
    billlee
        11
    billlee  
       Jun 5, 2018
    在 <dependencyManagement> 中指定依赖新版本的 org.json
    About     Help     Advertise     Blog     API     FAQ     Solana     3292 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 65ms UTC 13:44 PVG 21:44 LAX 06:44 JFK 09:44
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86