我是靠谱客的博主 呆萌帅哥,最近开发中收集的这篇文章主要介绍maven-assembly-plugin简介,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

使用assembly插件非常简单,如果想要使用预制的assembly描述符,则通过<descriptorRefs>/<descriptorRef>参数配置描述符。如果想要使用自定义assembly描述符,则使用<descriptors>/<descriptor>参数配置描述符的路径。

对assembly插件的一次调用,实际上可以从多个描述符生成程序集。可以最大限度的灵活定制项目生成的二进制文件组。在同一个配置中<descriptorRefs>和<descriptors>可以混合使用。当创建程序集时,使用程序集id作为artifact的分类器,并将创建的程序集附加到项目上,以便在安装和部署阶段将其上载到存储库中。

如在pom.xml中build/plugins下添加如下配置:

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>3.1.1</version>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
</plugin>

表示使用assembly预制的描述符jar-with-dependencies创建包含项目依赖的程序集二进制文件。

在大多数情况下,需要确保程序集的创建为构建过程的一部分,这样可以确保程序集可用于安装和部署。可通过assembly:single来实现。

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>3.1.1</version>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

如上配置将创建程序集绑定到了package阶段。则在执行mvn package后,会在target目录下生成类似的文件:

XXX-1.0-SNAPSHOT-jar-with-dependencies.jar,在版本和后缀之间的jar-with-dependencies为用于创建程序集的描述符的id,即自定义的assembly描述符文件中配置的id。如果不想在文件或目录后追加此id,可以在配置中将appendAssemblyId设置为false,如下:

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>3.1.1</version>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <appendAssemblyId>false</appendAssemblyId>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

虽然可以将single绑定到构建周期的任何阶段,但是一定要确保在创建程序集的时候,需要的资源已经存在,这时还可以通过mvn assembly:single来创建程序集。assembly描述符文件的配置可以参考官方文档。

最后

以上就是呆萌帅哥为你收集整理的maven-assembly-plugin简介的全部内容,希望文章能够帮你解决maven-assembly-plugin简介所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部