maven官方仓库有些依赖并不存在,现在项目都是maven直接获取jar,当maven获取不到时,需要我们把jar上传至maven仓库。
已 ImpalaJDBC41.jar 文件为例,如:
希望上传后,设置的依赖为:
<dependency>
<groupId>com.cloudera</groupId>
<artifactId>ImpalaJDBC41</artifactId>
<version>2.6.30</version>
</dependency>
1、上传至本地仓库
在该文件夹中打开命令窗口,输入
mvn install:install-file "-DgroupId=com.cloudera" "-DartifactId=ImpalaJDBC41" "-Dversion=2.6.30" "-Dpackaging=jar" "-Dfile=ImpalaJDBC41.jar"
语法为:
mvn install:install-file: maven命令,往本地仓库中安装文件
-DgroupId: groupId名称
-DartifactId:artifactId名称
-Dversion: 依赖包的版本号
-Dpackaging:打包方式,一般为jar
-Dfile:上传源文件路径,这里可以写绝对路径,我这里与jar在同一级目录,故直接放jar文件名称
运行完成后,可以再仓库中显示为:
2、上传到私服nexus
在cmd中,执行:
mvn deploy:deploy-file "-DgroupId=com.cloudera" "-DartifactId=ImpalaJDBC41" "-Dversion=2.6.30" "-Dpackaging=jar" "-DgeneratePom=true" "-Dfile=ImpalaJDBC41.jar" "-Durl=私服地址" "-DrepositoryId=私服ID"
mvn deploy:deploy-file:maven版本发布命令
-DgroupId: groupId名称
-DartifactId:artifactId名称
-Dversion: 依赖包的版本号
-Dpackaging:打包方式,一般为jar
-Dfile:上传源文件路径,这里可以写绝对路径,我这里与jar在同一级目录,故直接放jar文件名称
-DgeneratePom: true 表示生成pom
-Dfile:上传源文件路径,这里可以写绝对路径,我这里与jar在同一级目录,故直接放jar文件名称
-Durl :私服的地址
-DrepositoryId : 私服地址的id
注意:Durl和DrepositoryId不知道的话,去查看maven中settings.xml文件,如: