问题描述
我对联系智商问题并不陌生。 Nexus IQ by Sonatype扫描以下组件时,我遇到了“依赖关系超过10年”的约束。
组件名称:
antlr:antlr:2.7.7
javax.xml:jaxp-api:1.4.2
org.codehaus.jettison:抛弃:1.2
org.json:json:20080701
我在pom.xml中没有明确提到上述任何依赖关系。 另外,在应用程序的任何地方都没有提到JSON版本。
解决方法
正如问题描述所指出的,依赖项的存在时间已超过10年。
例如。 org.json : json : 20080701
来自2008年。
您应该将它们更新为较新的版本。
编辑:
运行maven dependency:tree
来找出这些依赖项的父项。然后,您必须按递减的顺序在几种解决方案之间进行选择。
-
更新父版本(假设较新的父版本将使用子依赖的较新版本)
-
如果您无法使用#1,请直接添加这些令人讨厌的依赖项的较新版本(假设父项依赖项与这些较新版本兼容)
在任何一种情况下,您都必须对应用程序进行彻底的测试(如果应用程序已经具有良好的单元测试,则应该很容易)
,如果您无法直接在 pom 中看到这些依赖项,请转到您的依赖项层次结构,然后您可以在已解析的依赖项中看到这些。 然后您可以确定哪些导致问题并通过更改父依赖版本来解决它们。