最近做项目时,使用了阿里的身份校验服务,引入jar之后,项目编译失败(maven项目),什么原因呢?
我们知道maven编译的时候默认会根据依赖去默认中心仓库寻找相应的jar包,我们引入的jar是放在项目根目录下的,maven编译的时候是无法找到jar依赖的。那么有什么好的解决办法呢?你可能会想到,我们可以在项目中指定一下jar包的位置,或者把jar放到中心仓库去。
1.添加jar包绝对路径
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>${project.basedir}/src/main/webapp/WEB-INF/lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
</plugins>
2.jar安装到本地仓库
有同学会想到把jar放到中心仓库就完了,这样肯定不行,我们需要通过mavan手动把jar安装到中心仓库(需要安装maven,并配置默认仓库),方法如下:
maven安装jar的命令是:
mvn install:install-file -Dfile=jar包的位置 -DgroupId=jar的groupId -DartifactId=jar的artifactId -Dversion=版本号version -Dpackaging=jar
安装完成之后就可以再仓库里面找到jar包了,然后项目里面就可以正常的dependency依赖进去了。