H5W3
当前位置:H5W3 > 其他技术问题 > 正文

maven解决包冲突有哪些方法?

我有一个工程myproject-public,要打成jar包给其他项目共用。
myproject-public引用了JAR包:A

有其他项目组工程otherproject引用我的myproject-public包,但是也引用了A包。

为了避免冲突,常规做法是,otherproject引用我的myproject-public包时,将A包排除。

但是有没有其他办法?

比如我myproject-public引用A的时候,配置一下scope,然后otherproject引用我的myproject-public包时也,配置一下scope。能达到这样的效果:

otherproject不用排除A,就能正确的编译、打包、运行?

我想达到这样的效果:
1、myproject-public打包的时候把A排除
2、otherproject引用myproject-public,但是没有引用A的时候,编译期报错。
3、otherproject引用myproject-public,引用了A,otherprojectmyproject-public均使用这个A版本。

以上,求大神指教,能做到吗?

回答:

myproject-public配置scope provider,是不是能满足你的要求?

A包由使用者提供

provider和optional说明参考:https://segmentfault.com/a/11…

本文地址:H5W3 » maven解决包冲突有哪些方法?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址