Maven:<directory> <outputDirectory> 标签和标签下的<build>区别



在Maven中,在"build"标记下,我们有"directory"one_answers"outputDirectory",当我将它们设置为不同的目录时,"outputDirectory"中指定的目录将作为目标目录。我还观察到,outputDirectory中指定的目录可以配置为在"directory"标记下指定的目录的子目录,但在这种情况下,我也可以使用"目录"本身来指定我的子目录。我们对这两个标签

有什么具体的用法吗
<build>
<directory>target</directory>
<outputDirectory>target/classes</outputDirectory>

参见超级pom:https://maven.apache.org/guides/introduction/introduction-to-the-pom.html

Maven编译器插件将编译后的类放入project.build.outputDirectory

Surefire插件使用project.build.outputDirectory 中的项目类运行测试

Jar插件从project.build.outputDirectory收集文件,并将生成的Jar放入project.build.directory

安装插件从project.build.directory 获取jar

project.build.outputDirectory需要与project.build.directory不同,因为project.build.directory包含编译类以外的文件,并且这些文件将被只期望编译类的插件(例如jar插件)错误地获取。

默认情况下,project.build.outputDirectoryproject.build.directory的子目录(分别为target/classestarget)。通常不建议更改这些属性的默认值,通常也没有必要这样做。

最新更新