Maven:如何从命令行更改目标目录的路径?

2022-08-31 11:24:21

Maven:如何从命令行更改目标目录的路径?

(在某些情况下,我想使用另一个目标目录)


答案 1

您应该使用配置文件。

<profiles>
    <profile>
        <id>otherOutputDir</id>
        <build>
            <directory>yourDirectory</directory>
        </build>
    </profile>
</profiles>

并开始使用您的个人资料进行处理

mvn compile -PotherOutputDir

如果你真的想从命令行定义你的目录,你可以做这样的事情(根本不推荐):

<properties>
    <buildDirectory>${project.basedir}/target</buildDirectory>
</properties>

<build>
    <directory>${buildDirectory}</directory>
</build>

并像这样编译:

mvn compile -DbuildDirectory=test

这是因为您无法使用-Dproject.build.directory


答案 2

科林是正确的,应该使用配置文件。但是,他的答案对配置文件中的目标目录进行了硬编码。另一种解决方案是添加如下配置文件:

    <profile>
        <id>alternateBuildDir</id>
        <activation>
            <property>
                <name>alt.build.dir</name>
            </property>
        </activation>
        <build>
            <directory>${alt.build.dir}</directory>
        </build>
    </profile>

这样做会产生将生成目录更改为 alt.build.dir 属性所赋予的任何内容的效果,该属性可以在 POM、用户的设置中或在命令行中给出。如果该属性不存在,则编译将在正常目标目录中进行。


推荐