Apache Maven Source插件

x33g5p2x  于2022-10-06 转载在 Apache  
字(2.5k)|赞(0)|评价(0)|浏览(408)

1. 概述

源插件为当前项目的源文件创建一个jar档案。默认情况下,该jar文件是在项目的目标目录下创建的。

2. 插件的目标

Source Plugin有五个目标。

source:aggregate 汇集一个聚合器项目中所有模块的源文件。
source:jar 用于将项目的主要源码捆绑到一个jar档案中。
source:test-jar 另一方面,用于将项目的测试源捆绑到一个jar档案中。
source:jar-no-fork与jar类似,但不会分叉构建生命周期。
source:test-jar-no-fork与test-jar类似,但不分叉构建生命周期。

3. 使用方法

source插件可以用来从命令行或通过将目标绑定到项目的构建生命周期来创建项目源的jar文件。要从命令行生成jar文件,使用以下命令:

mvn source:jar

测试源的jar文件也可以通过执行来生成。

mvn source:test-jar

与你的工件一起安装源代码 有两种方法可以做到这一点。你可以把这个插件绑定到一个阶段,或者你可以把它添加到一个配置文件。目标source:jar-no-forksource:test-jar-no-fork是将目标绑定到构建生命周期中的首选。

使用阶段性绑定来安装源代码

以下是你如何在pom.xml中配置插件,使其在验证阶段自动运行。

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.0.1</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>verify</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  ...
</project>

我们在这里使用验证阶段,因为它是在安装阶段之前的阶段,从而确保在安装发生之前已经创建了sources jar。

使用配置文件安装源代码

如果你想在发布过程中和你的工件一起安装源码的jar,你可以在你的pom.xml文件中添加这个。

<project>
  ...
  <profiles>
    <profile>
      <id>release</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>3.0.1</version>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar-no-fork</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
  ...
</project>

4. 例子

为了定制这个插件,你可以在你的POM中改变它的配置参数,如下所示。

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.0.1</version>
        <configuration>
          <outputDirectory>/absolute/path/to/the/output/directory</outputDirectory>
          <finalName>filename-of-generated-jar-file</finalName>
          <attach>false</attach>
        </configuration>
      </plugin>
    </plugins>
  </build>
  ...
</project>

如果是主源,生成的jar文件将以finalName的值加上"-sources "命名。否则,如果是测试源,它将是finalName加"-test-sources"。它将被生成在指定的outputDirectory中。attach参数指定java源是否会被附加到项目的工件列表中。

5. 总结

在这个快速指南中,我们介绍了源码插件,并给出了使用和定制它的说明。此外,我们还看到了不同的插件目标和它们的用法。
阅读更多关于 : https://maven.apache.org/plugins/maven-source-plugin/examples/configureplugin.html

相关文章

微信公众号

最新文章

更多