IntelliJ从12版本升级到13版本后,以下maven相关插件无法解决:

org.apache.maven.plugins:maven-clean-plugin:2.4.1
org.apache.maven.plugins:maven-deploy-plugin
org.apache.maven.plugins:maven-install-plugin
org.apache.maven.plugins:maven-site-plugin

在使用IntelliJ 12时,这些不在插件列表中。不知何故,它们在更新后被添加,现在IntelliJ抱怨无法找到它们。我可以在哪里从列表中删除这些插件或通过安装它们来解决问题?

我可以运行maven目标干净和编译没有问题,但配置文件/插件在IDE中显示红色警告。

8年后编辑:也请看看这里所有其他好的答案。公认的答案是一个常见的解决方案,但可能不适用于您或您的IDE版本


当前回答

如果工件无法解决。 进入.m2/存储库目录 并检查你没有这样的文件:

build-helper-maven-plugin-1.10.pom.lastUpdated

如果文件夹中没有任何工件,只需删除它,并尝试在IntelliJ中重新导入。

这些文件的内容如下:

#NOTE: This is an Another internal implementation file, its format can be changed without prior notice.
#Fri Mar 10 10:36:12 CET 2017
@default-central-https\://repo.maven.apache.org/maven2/.lastUpdated=1489138572430
https\://repo.maven.apache.org/maven2/.error=Could not transfer artifact org.codehaus.mojo\:build-helper-maven-plugin\:pom\:1.10 from/to central (https\://repo.maven.apache.org/maven2)\: connect timed out

没有*。lastUpdated文件,IntelliJ(顺便说一下是Eclipse)可以重新加载丢失的内容。

其他回答

取消选中Maven设置中的“脱机工作”复选框。

如果你已经尝试清除你的.m2文件夹,使用“Invalidate Caches”和“Restart”,仔细检查POM文件中的插件声明,那么:

1. 检查IntelliJ Maven配置

Ctrl + Shift +一个 输入“Maven设置” 勾选“使用插件注册表” 再次检查“Maven主路径”和“用户设置文件” 尝试获取额外的日志:将“输出级别”设置为“调试”,然后单击“应用”

2. 检查IntelliJ Java配置

Ctrl + Shift +一个 输入“进口” 仔细检查“JDK for importer”中使用的JDK

3.更新cacerts keystore文件

请确保您信任远程Maven存储库的TLS服务器证书。为此,将公共证书添加到/path/to/jdk/jre/lib/security/下的cacerts密钥存储库(例如使用https://keystore-explorer.org/) -默认密码为“changeit”

如果你不能编辑文件:

Ctrl + Shift +一个 输入“进口” 更新“导入器的虚拟机选项”-Djavax.net.ssl.trustStore=/path/to/cacerts -Djavax.net.ssl.trustStorePassword=changeit然后单击“应用”

如果问题仍然存在,您可以手动添加丢失的插件文件。

例如,如果maven-site-plugins缺失,请访问https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-site-plugin

选择您的版本,并下载直接关联到您的。m2文件夹中的文件,在这个例子中:C:\Users\ {USERNAME} .m2\repository\org\apache\maven\plugins\maven-site-plugin\ {version}

在IntelliJ IDEA中,打开Maven侧栏并重新加载(工具提示:重新导入所有Maven项目)

这些方法对我来说都没用。在经历了痛苦的几个小时后,我发现这个问题是由我导入项目的方式引起的。

上下文:导入带有Web和Kafka依赖项的新生成的Spring Initializr项目。

问题:插件依赖“未找到”,IntelliJ无法编译应用程序,即使mvn清洁编译在控制台上运行良好。

坏的方法:使用“New > Project from Existing Sources…”选项导入它。

好的方法是:使用“Open…”选项导入它。

从坏到好的解决方案:删除项目,从版本控制中删除并重新克隆repo,以确保所有gitignored IntelliJ文件都被删除,并使用“Open…”选项将其导入IntelliJ。

我把依赖放在依赖项中,解决了我的问题:

<dependencies>
    <dependency>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>3.0.0</version>
    </dependency>
</dependencies>

我忽略了<pluginManagement>,它是<dependencyManagement>,这与<dependencies>不同:

dependencyManagement只声明依赖项,不引入依赖项。

因此,无论我清除存储库文件夹中的所有项目,还是键入mvn clean install -e -U,两者都不起作用。