Maven:所有插件和依赖项都用红色下划线标出

时间:2019-11-13 17:37:37

标签: maven intellij-idea

任何想法??我为IntelliJ下载了一个Maven项目,但无法构建它。我遇到依赖项和插件错误:

VIEW BUILD LOG HERE

VIEW IDEA LOG HERE

MAven

1 个答案:

答案 0 :(得分:1)

通过查看日志文件,正如人们所提到的,IntelliJ无法真正下载依赖项。

原因是:

Caused by: java.lang.RuntimeException: 
org.eclipse.aether.transfer.ArtifactTransferException: Could not transfer artifact org.springframework:spring-aop:pom:4.1.2.RELEASE from/to central (https://repo.maven.apache.org/maven2): 
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

通常,当您的所有外部流量都由公司代理进行路由时,该公司代理会执行中间人类型的扫描,然后对流量进行解密,扫描然后重新加密。

我们在办公室遇到同样的事情,所以我们的解决方案是:

  • 安装您自己的Java SDK版本(例如,使用SDKMan
  • 在新安装中,将默认证书存储中的证书导入以验证新证书链
    • 帮助访问Chrome中的URL来查看certificate chain
    • 如果它看起来不像“截图”,那么有一个代理
  • 更新IntelliJ,使Project SDK是新的
  • 更新IntelliJ,使JDK for importer是新的
  • 点击IntelliJ中的Reimport All Maven Projects

这应该使它可以继续正常工作,或者在IntelliJ中,您可以运行adhoc maven目标:

mvn clean install -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true

它应该通过忽略所有SSL证书问题,将所有必需的依赖项安装到本地Maven缓存中,但这 通常是个坏主意

这时,您可以单击IntelliJ中的Reimport All Maven Projects以刷新它,但我发现这始终不起作用,因为IntelliJ有时会下载其他插件依赖项,而该依赖项可以挂在外部clean install个目标。