繁体   English   中英

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

[英]Maven: How to change path to target directory from command line?

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

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

您应该使用配置文件。

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

并使用您的个人资料启动 Maven

mvn compile -PotherOutputDir

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

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

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

并像这样编译:

mvn compile -DbuildDirectory=test

那是因为您无法使用-Dproject.build.directory更改目标目录

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

    <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、用户设置或命令行中给出。 如果该属性不存在,则编译将在普通目标目录中进行。

我的解决方案:

  • 在pom.xml中:

      <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.3.2</version> <configuration> <outputDirectory>${dir}</outputDirectory> </configuration> </plugin> 
  • bash中的命令:

    mvn package -Ddir="/home/myuser/"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM