The*_*ger 34 eclipse m2eclipse maven spring-boot
我正在使用spring-boot
,并遇到类似于此处描述的错误.我在pom.xml中添加了以下内容.
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId><!--$NO-MVN-MAN-VER$-->
<version>1.1.0.Final</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
我通过Spring启动覆盖了我的父pom.xml中定义的validation-api 1.0.0依赖关系,这给出了令人讨厌的警告消息:
覆盖managed-api的托管版本1.0.0.GA
如何在Eclipse中永久禁止此警告消息?它显示在我的pom.xml和我的问题视图中.
Fre*_*con 35
当出现该警告时,您可以打开警告上的快速修复菜单(Ctrl + 1)并选择
忽略此警告
这将在版本行上添加注释,如:
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version><!--$NO-MVN-MAN-VER$-->
</dependency>
Run Code Online (Sandbox Code Playgroud)
您的问题是您在错误的行上手动添加了注释.
Eri*_*ang 26
由于项目正在使用spring-boot
,可以在这里找到更合适的答案:https://stackoverflow.com/a/35385268/1568658
(因为我遇到了同样的问题,上面的答案也不是很完整.我会在这里添加一个答案.)
发行原因:
spring-boot
定义了许多依赖项及其版本,当您使用spring-boot
父项时,这些依赖项被继承,并且使用不同版本覆盖其中一个依赖项将获得警告,因为它可能会破坏其他库的依赖项.
解:
在之间定义该依赖项的属性<properties></properties>
,以指定版本.
例如
<properties>
<reactor.version>2.5.0.BUILD-SNAPSHOT</reactor.version>
</properties>
Run Code Online (Sandbox Code Playgroud)
如何找到属性名称:
ctrl + click
在<parent>
标签上打开父元素的pom,需要递归点击两次,最后用artifactId作为pomspring-boot-dependencies
servlet-api
,您可以看到默认版本.Spring提供的文档更好地解释了它:https://spring.io/blog/2016/04/13/overriding-dependency-versions-with-spring-boot
小智 5
在主 pom 中输入您需要的版本。
此警告意味着您正在尝试覆盖主(顶级)pom.xml 中定义的工件版本。只需在主 pom 中输入您需要的版本,您甚至不需要<version />
在其他 pom 中使用此依赖项。
归档时间: |
|
查看次数: |
53721 次 |
最近记录: |