前言
在做JAVA开发时经常会碰到一些奇怪的包,不管是在maven常用库还是阿里库中都没有资源,只能去官方去下载JAR包,但是直接下载下来的jar包还不能直接放入到本地maven库中,即使是放进去了也不识别,又不想在pom.xml中配置绝对路径来加载,那怎么办呢?
今天就来说说我是怎么解决的,希望能对正在面临此问题的小伙伴有帮助。
一、官网下载
官网下载如下资源:
- JAR包
- pom.xml
- 源码JAR包(如果有的话)
二、环境准备
做如下准备:
- maven环境配置好(怎么配置就不在这里说了,不会的小伙伴可以去网上搜)
- idea环境配置好(其它编辑器也可以,只要你操作熟练即可,这里用idea做演示)
- 将idea的JDK配置成你目前项目使用的JDK版本,如下图是我项目使用的,主要有以下这几个地方:
项目右键:
- 将idea的JDK配置成你目前项目使用的JDK版本,如下图是我项目使用的,主要有以下这几个地方:
- 将源码JAR包解压,并将下载的pom.xml放入到源码目录
- 使用idea打开源码项目,将其加入maven项目管理,如下图:
三、打包安装
- 使用install进行打包,并让编译器自动检查错误,按编译器提示修改相应错误,直到能成功打包完成。
- 找到打包安装好的本地maven目录,用你提前下载好的官网JAR包替换刚手动打好的JAR包【可能你会问为什么要替换? 原因是官网公布的源码并不是一个完整的项目,你手动打包好的jar包会缺少很多东西,手动打包的过程是告诉maven本地库已安装了此JAR包,以后再找此jar包就可以到其相应的目录下找了】
另外,如果打包时还是会报jdk版本不对的问题,你可以强制maven使用某个JDK版本,具体做法如下:
- 在maven的setting.xml中加入如下代码:
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
- 如果还是有问题,可以在项目的pom.xml中加入如下代码:
<!-- 强制使用JDK1.8编译 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
总结
当远程mavn库和本地maven库都没有相应的JAR包时,我们可以采用官网下载安装的方式,将其安装到本地maven库中。