如何指定Maven构建的输出目录?代码举例讲解

在Maven中指定构建输出目录的主要方式有两种:

  1. 通过中的或指定输出目录:
<build>
    <directory>target</directory> 
    <finalName>myproject</finalName>
</build>
  1. 通过插件的配置指定输出目录:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <outputDirectory>${project.basedir}/target/classes</outputDirectory>
    </configuration>
</plugin>

另外,Maven的默认构建输出目录为:
– target:项目构建输出目录
– target/classes:编译输出目录
– target/test-classes:测试编译输出目录
– target/.jar或.war:打包输出文件

来看一些示例:
指定构建输出目录:

<build>
    <directory>build</directory>
    <finalName>myproject</finalName>
</build>

此时构建输出目录为build。
指定编译输出目录:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <outputDirectory>${project.basedir}/bin/classes</outputDirectory>
    </configuration>
</plugin>

此时编译输出目录为bin/classes。

所以,通过配置构建元素或插件,我们可以轻松自定义Maven构建的输出目录。