maven模块化设计的项目,私服被禁用导致无法打包问题解决思路
最近项目组给客户开发的软件要交付了,而该软件的代码版权属于客户,所以我们需要提供代码给客户
然而提给客户的代码,客户是不可能运行的,因为依赖的包,很多包是一些厂商的包,也不在任何的开放仓库中,没办法
解决办法:
思路一:开始在工程的路径中加入lib,将maven中引用本地的包
思路二:将包提交到本地仓库,解决私有依赖问题
思路一遇到问题:
依赖传递无法解决,我们的是组件化的项目,抽取了很多公共的组件,而依赖私有仓库的,基本都是基础组件,而这些组件,打包可以成功,但是在上层应用再引用的时候,会去远程仓库中查找。传递依赖会出问题,该问题现在依然没有解决。因为时间紧迫,没有接着尝试
思路二,使用mvn命令,将对应的私有包安装到本地依赖
具体命令为:
@call mvn install:install-file -Dfile=".\lib\1.2.1\xxx-1.2.1.pom" -DgroupId="xxx" -DartifactId="xxx" -Dversion=1.2.1 -Dpackaging=pom
@call mvn install:install-file -Dfile=".\lib\1.2.1\xxx-1.2.1.jar" -DgroupId="xxx" -DartifactId="xxx" -Dversion=1.2.1 -Dpackaging=jar
最终,问题解决,不能指望客户有maven私服,又要客户随时能够打包,希望能够帮到大家