首页 > 解决方案 > 如何触发 IntelliJ 重新导入单个 Maven 依赖项?

问题描述

我有一个工作流在一个应用程序和它的一个库上工作,看起来像这样:

更改库 -> 将库 jar 推送到远程 Maven 存储库,不更改版本 -> 将更新的库 jar 从远程存储库拉到下游应用程序 -> 测试并更改应用程序和库

但似乎 IntelliJ 索引和/或缓存 Maven 依赖项的方式不受我从 Maven 界面运行全新安装的影响。是否有一种万无一失的方法可以强制 IntelliJ 丢弃任何缓存的依赖项并重新导入,或者可能只为所需的库执行此操作?

标签: mavenintellij-idea

解决方案


这很可能与 IntelliJ 无关。由于版本号相同,maven 不会重新下载你的依赖。尝试从 maven 存储库中本地删除依赖项:

rm -rf ~/.m2/repository/<..path to your library package..>

您还可以通过将库用作本地依赖项来避免将库推送到远程存储库,并在本地进行完全测试。对于这种方法,请在此处查看答案:如何将本地 jar 文件添加到 Maven 项目?

或者,由于您没有有效地更改库版本,因此正确的方法是使用库项目源作为 IDE maven 项目的直接依赖项。为此 - 将此 Maven 库项目作为新模块添加到现有 Maven 项目:文件 | 新... | Module from Existing Sources... 并选择此库项目的 pom.xml 文件。


推荐阅读