记一次maven构建正常,而Intellij IDEA中启动时找不到间接依赖的jar包

记一次maven构建正常,而Intellij IDEA中启动时找不到间接依赖的jar包。

项目中需要使用第三方的提供的SDK。该SDK依赖okhttp等其他jar包。由于该SDK在maven仓库中没有,只能用`maven install:install-file`添加到本地maven仓库中去。第一次安装时,用的`maven-install-plugin`插件是2.5.2版本,该插件版本无法从上述SDK中提取pom文件,会默认生成一个简单的pom文件(里面自然不包含所依赖的jar包,如okhttp),构建运行时会找不到okhttp中的相关类。后来把`maven-install-plugin`升级为3.0.0-M1,maven构建成功了,但在Intellij中启动时,却依然找不到okhttp。思索一下,觉得没道理啊,后来突然想到是不是intellij有缓存,于是找到项目的pom文件,把所依赖的sdk那一行删掉,发现intellij开始计算重新计算依赖的jar包,此后再把删掉的内容加上去,发现就正常了。

猜测:项目中pom文件变化时,intellij才会重新计算依赖关系。此后,即使maven仓库有变化,intellij也不会重新拉取。


maven install参考链接(如何安装第三方jar包到本地仓库):

1. Maven – Guide to installing 3rd party JARs

2. Apache Maven Install Plugin – install:install-file

3. Apache Maven Install Plugin – Introduction

你可能感兴趣的:(记一次maven构建正常,而Intellij IDEA中启动时找不到间接依赖的jar包)