由于已知的漏洞https://www.cvedetails.com/vulnerability-list/vendor_id-45/product_id-33761/Apache-Commons-Beanutils.html,我试图从安装到我的本地.m2存储库中删除commons-beanutils版本。
但是,当我第一次使用versions-maven-plugin对我的工件进行版本控制时,它会自动下载多个版本的依赖项。
Downloaded from maven: https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.9.3/commons-beanutils-1.9.3.pom (15 kB at 29 kB/s)
Downloading from maven: https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.pom
Downloaded from maven: https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.pom (357 B at 6.4 kB/s)
Downloading from maven: https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.6/commons-beanutils-1.6.pom
Downloaded from maven: https://repo1.maven.org/maven2/commons-beanutils/1.6/commons-beanutils-1.6.pom (2.3 kB at 50 kB/s)
Downloading from maven: https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.9.3/commons-beanutils-1.9.3.jar
Downloaded from maven: https://repo1.maven.org/maven2/commons-beanutils/commons-beanutils/1.9.3/commons-beanutils-1.9.3.jar (246 kB at 1.8 MB/s)
我尝试覆盖pom文件中插件的依赖项版本。
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.7</version>
<dependencies>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.3</version>
<scope>compile</scope>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
但是它仍然下拉多个版本。
任何人都可以解释为何即使指定了特定版本,maven仍会下载具有相同依赖关系的多个版本。
要清楚一点,该插件决定使用正确的1.9.3版本,我只是想知道为什么首先要下载多个版本的依赖项?
欢呼