我每天在工作中使用 Maven 超过 5 年。但我从未尝试测试最小依赖项项目。
所以我在磁盘上创建了一个新目录,并放入一个pom.xml
文件中。它是您可以创建的最简单的pom文件。它只包含以下内容:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>info.jikra</groupId>
<artifactId>whatever</artifactId>
<version>0.1</version>
</project>
仅此而已。仅此而已。没有其他目录,没有单个Java文件,什么都没有。
然后我清除了我的本地存储库,并在带有我的pom文件的文件夹中运行mvn clean install
。
Maven下载了大量我不需要的依赖项。我的项目是空的,只有一个pom文件。然而,现在我的本地存储库中有超过 7,6M 个文件。
我不是任何类型的Maven大师,所以我想知道为什么所有这些依赖都是必要的。有人知道吗?
您的项目声明了一些预定义的插件以及packaging
(默认值为 jar
(,它定义了其他插件及其绑定的列表。这些正在与其传递依赖项一起下载。
您可以运行mvn help:effective-pom
以查看项目中实际存在的内容。
您还可以通过以下方式查看插件及其依赖项: mvn dependency:resolve-plugins