Maven 更改 jar 的输出目录不起作用

Maven changing output directory for jar doesn't work

我用 mvn clean install 构建我的项目,但是我想在目标文件夹中生成一个子文件夹并将生成的 jar 文件放在那里。我看到了这两个问题 Maven: specify the outputDirectory only for packaging a jar? and maven: how to place the output jar into another folder 但是他们的答案似乎不起作用。

这是我的 Maven 构建的样子:

   <build>
        <plugins>       
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-jar-plugin</artifactId>
              <version>2.3.1</version>
              <configuration>
                <outputDirectory>${project.build.directory}/blah</outputDirectory>
              </configuration>
            </plugin>
        </plugins>
    </build>

但是我得到的 .jar 文件仍在目标目录中。我还注意到项目打包设置为 <packaging>eclipse-plugin</packaging> 如果我将其更改为 jar,那么它工作正常,但我确实需要它是 eclipse-plugin。我也在使用 tycho 作为 eclipse 插件。我是否遗漏了之前未提及的内容?

根据您 eclipse-plugin 的包装,我猜您使用的是 Tycho。 Tycho 似乎不使用任何 Maven 插件,因此配置 maven-jar-plugin 无济于事。而是尝试配置 tycho-packaging-plugin, specifically the buildDirectory 属性:

<plugin>
  <groupId>org.eclipse.tycho</groupId>
  <artifactId>tycho-packaging-plugin</artifactId>
  <version>${tycho-version}</version>
  <configuration>
    <buildDirectory>${project.build.directory}/blah</buildDirectory>
  </configuration>
</plugin>