为啥从 Spring Boot 版本 2.1.4 更改为 2.1.5 会出现未知配置 Maven 错误?
Posted
技术标签:
【中文标题】为啥从 Spring Boot 版本 2.1.4 更改为 2.1.5 会出现未知配置 Maven 错误?【英文标题】:Why does change from Spring boot version 2.1.4 to 2.1.5 gives unknown configuration Maven error?为什么从 Spring Boot 版本 2.1.4 更改为 2.1.5 会出现未知配置 Maven 错误? 【发布时间】:2019-10-02 21:19:24 【问题描述】:我已经安装了 Eclipse(实际上是 Spring Tool Suite)。它与 Maven 一起提供。我已经创建了 Spring Boot 启动项目。 Maven 正在下载所有依赖项,一切正常。
最近,我创建了一个新项目。这一次,我注意到 pom.xml 中有错误 问题窗口(在 STS 中)显示如下:
Description Resource Path Location Type
Unknown pom.xml /TestSessionAttribute line 1 Maven Configuration Problem
我注意到 spring boot 版本是 2.1.5(之前是 2.1.4)。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
我继续更新了项目(Maven > 更新项目),并选中了“强制更新快照/发布”。这并没有解决问题。 我确实看到了
spring-boot-2.1.5.RELEASE.jar
在 m2 存储库中。
我回去将版本更改为 2.1.4,然后是 Maven > 更新项目,错误就消失了。
为什么我在版本为 2.1.5 时收到 Maven 错误?
【问题讨论】:
你跑过mvn install
吗?
请先尝试在命令行上构建,不要只安装mvn clean package
...看看是否没有错误发生...
@ChristopherSchneider 由于 Maven 带有 STS,我没有做任何与 maven 相关的事情。我对maven不太熟悉。我不确定在安装 Eclipse/STS 时是否单独安装了 maven。
Maven 不是通过 Eclipse 安装的。如果您在 Eclipse 中有 STS,它只在 Eclipse 中。如果您在我建议在此处下载之外需要它:maven.apache.org/download.cgi 和安装请参阅maven.apache.org/install.html
@khmarbaise 我是这么认为的。由于它作为插件工作,我不确定我是否想再次单独安装 maven。我去看看maven插件是否需要更新。
【参考方案1】:
我不知道为什么坏了。我猜这是 eclipse 项目中的一个损坏的设置。
我只知道怎么解决:
-
在 pom.xml 中保留 2.1.5.RELEASE
关闭日食
运行
mvn clean eclipse:clean eclipse:eclipse
启动 Eclipse
所以所有与 eclipse 相关的设置都将被重新创建。然后它按预期工作。之后,您甚至可以“降级”spring 版本,它仍然可以正常工作。
【讨论】:
最新版STS自带Maven插件。由于没有单独安装 maven,我不确定是否可以从命令行运行 mvn。我确实看到,当我从 2.1.3 发送到 2.1.4 时,我没有看到任何错误。但是当我从 2.1.4 转到 2.1.5 时,我看到了错误。 2.1.5 可能缺少一些依赖项。我还在研究它。 这并不能解决我的问题。如果我这样做,eclipse 抱怨配置已过时,一旦我从 eclipse 刷新 maven 配置,错误又回来了。【参考方案2】:根据this 链接,您可以通过将 maven-jar-plugin 降级到 3.1.1(从 3.1.2)来解决此问题。我可以确认该修复程序适用于我自己的项目。
将以下条目添加到您的 pom 以解决该问题。
<properties>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
</properties>
official bug entry for eclipse 也存在。
【讨论】:
是的,做到了。谢谢 难以置信...它对我有用。我花了1个小时试图修复它!非常感谢 完美运行! (在 Maven->更新项目之后...)谢谢。 看起来 2.1.6 也被 eclipse 破坏了.. 得到一堆错误.. :( 在通过 spring initializr 生成的 2.2.5 项目中遇到了同样的问题。在 pom.xml 中添加上述内容解决了问题。以上是关于为啥从 Spring Boot 版本 2.1.4 更改为 2.1.5 会出现未知配置 Maven 错误?的主要内容,如果未能解决你的问题,请参考以下文章
为啥当我尝试将我的 Spring Boot 应用程序推送到 heroku 时它返回“致命错误编译:无效目标版本:11”
为啥我在 Spring Boot 中从服务器端配置并做出反应时出现 CORS 错误?
为啥 H2 进行 spring-boot 测试,但它会将数据写入我的本地 mysql 数据库?