问题:如何将一个jar文件发布到本地maven仓,使得pom文件可以根据坐标引入?
使用场景:一个第三方jar文件,在中心仓没有该依赖(无法通过maven下载),但是我们有该jar包。在项目中想通过maven引依赖的方式引入这个jar,并能正常打项目包。
办法1:用cmd命令执行mvn install命令将该jar包安装到本地maven仓:
mvn install:install-file -Dfile=D:\workspace\hupean\military\air\target\air-1.0.0-SNAPSHOT.jar -DgroupId=com.hupean -DartifactId=air -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar
注:
-Dfile:jar文件所在本机的全路径
-DgroupId:jar的groupId
-DartifactId:jar的名称
-Dversion:jar的版本
最终安装的目录:同maven中setting.xml中定义的仓库地址
安装结果如下图:
办法2:如果有该jar文件的项目源码,直接用idea打开此项目源码,直接maven install打包即可
mvn install到本地的好处:pom加载依赖时,优先从本地仓获取依赖(如果本地仓没找到依赖,才会去settings.xml里配置的其他中心仓下载依赖)。