文档章节

使用Maven的assembly插件实现自定义打包

 北极之北
发布于 2018/10/29 12:02
字数 493
阅读 99
收藏 0

pom.xml增加以下内容:assembly

 

  <profiles>

        <profile>

            <id>dev</id>

            <properties>

                <env>dev</env>

            </properties>

            <activation>

            <!--     默认启用的环境配置 -->

                <activeByDefault>true</activeByDefault>

            </activation>

        </profile>

        <profile>

            <id>test</id>

            <properties>

                <env>test</env>

            </properties>

        </profile>

        <profile>

            <id>oa</id>

            <properties>

                <env>oa</env>

            </properties>

        </profile>

        <profile>

            <id>pre</id>

            <properties>

                <env>pre</env>

            </properties>

        </profile>

        <profile>

            <id>gray</id>

            <properties>

                <env>gray</env>

            </properties>

        </profile>

        <profile>

            <id>prod</id>

            <properties>

                <env>prod</env>

            </properties>

        </profile>

    </profiles> 

<build>

<!-- 主资源目录 -->

         <resources>

            <resource>

              <!--   设定主资源目录 -->

                <directory>src/main/resources</directory>

            </resource>

        </resources>

        <finalName>${project.artifactId}-${env}-${project.version}</finalName> 

<plugins>

 

  <plugin>

                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-jar-plugin</artifactId>

                <version>2.4</version>

                <configuration>

                    <excludes>

                        <exclude>**/*.properties</exclude>

                        <exclude>**/*.xml</exclude>

                    </excludes>

                </configuration>

            </plugin>

            

                <plugin>

                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-compiler-plugin</artifactId>

                <version>3.1</version>

                <configuration>

                    <showDeprecation>true</showDeprecation>

                    <showWarnings>true</showWarnings>

                    <source>1.8</source>

                    <target>1.8</target>

                    <testSource>1.8</testSource>

                    <testTarget>1.8</testTarget>

                </configuration>

            </plugin>

            

              <plugin>

                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-surefire-plugin</artifactId>

                <version>2.18.1</version>

                <configuration>

                    <skipTests>true</skipTests>

                </configuration>

            </plugin>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

<plugin>

                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-assembly-plugin</artifactId>

                <version>3.0.0</version>

                <configuration>

                   <!--  not append assembly id in release file name -->

                    <appendAssemblyId>false</appendAssemblyId>

                    <descriptors>

                        <descriptor>assembly/assembly.xml</descriptor>

                    </descriptors>

                </configuration>

 

                <executions>

                    <execution>

                        <id>make-assembly</id>

                        <phase>package</phase>

                        <goals>

                            <goal>single</goal>

                        </goals>

                    </execution>

                </executions>

            </plugin> 

 

 

</plugins>

</build>

 

 

 

 

在主文件夹下新建文件assembly,并增加以下文件assembly.xml:

内容:

<!-- - Copyright 1999-2011 Alibaba Group. - - Licensed under the Apache License,

Version 2.0 (the "License"); - you may not use this file except in compliance

with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0

- - Unless required by applicable law or agreed to in writing, software -

distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT

WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the

License for the specific language governing permissions and - limitations

under the License. -->

<assembly>

    <id>assembly</id>

    <formats>

        <format>tar.gz</format>

    </formats>

    <includeBaseDirectory>true</includeBaseDirectory>

    <fileSets>

 

        <fileSet>

            <directory>assembly/${env}/bin</directory>

            <outputDirectory>bin</outputDirectory>

            <fileMode>0755</fileMode>

        </fileSet>

        <fileSet>

            <directory>assembly/${env}/conf</directory>

            <outputDirectory>conf</outputDirectory>

            <fileMode>0644</fileMode>

        </fileSet>

        <fileSet>

            <directory>src/main/resources</directory>

            <outputDirectory>conf</outputDirectory>

            <fileMode>0644</fileMode>

            <excludes>

                <!-- 业务相关-->

                <exclude>testFiles/**/*</exclude>

                <!-- 系统相关-->

                <exclude>application.properties</exclude>

                <exclude>application-dev1.properties</exclude>

                <exclude>application-prod.properties</exclude>

                <exclude>application-test.properties</exclude>

                <exclude>application-dev.properties</exclude>

            </excludes>

        </fileSet>

    </fileSets>

    <dependencySets>

        <dependencySet>

            <outputDirectory>lib</outputDirectory>

            <!-- 去除框架相关jar包 -->

           <!--  <excludes>

                <exclude>com.alibaba:dubbo</exclude>

            </excludes> -->

        </dependencySet>

    </dependencySets>

</assembly>

 

© 著作权归作者所有

粉丝 8
博文 23
码字总数 17514
作品 0
深圳
私信 提问
DevOps进阶(九)使用assembly plugin实现自定义打包

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunhuaqiang1/article/details/84821580 DevOps进阶(九)使用assembly plugin实现自定义打包 assembly plugi...

孙华强
2018/12/05
0
0
Maven微服务(多模块)打jar包之maven-assembly-plugin配置详解(二)

一、maven-assembly-plugin插件介绍 Assembly 插件的主要作用是,允许用户将项目输出与它的依赖项、模块、站点文档、和其他文件一起组装成一个可分发的归档文件,简单的说,就是自定义打包的...

warm-Y
09/06
39
0
maven-使用assembly plugin插件实现自定义打包

修改pom.xml pom.xml中设置如下: 其中<artifactId>maven-assembly-plugin</artifactId>的maven-assembly-plugin是这个插件的标准命名,在maven2.0.*中带的默认版本是 execution的设置是为了......

如风达
2016/11/07
544
0
使用assembly plugin实现自定义打包

在上一篇文章中,讨论到在对maven的机制不熟悉的情况下,为了实现自己需要的打包格式而使用maven ant task以maven +ant的方式来实现非标准打包,而现在要介绍的是maven中针对打包任务而提供的...

squanchao
2015/10/17
1K
0
使用Maven的assembly插件实现自定义打包

一、背景   最近我们项目越来越多了,然后我就在想如何才能把基础服务的打包方式统一起来,并且可以实现按照我们的要求来生成,通过研究,我们通过使用maven的assembly插件完美的实现了该需...

hafiz.zhang
2017/03/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

使用递归打印乘法表

一般我们在学for循环的时候都会去打印九九乘法表,但是如果是用递归的方式打印的话,应该怎么做呢? 下面讲解一下用递归打印九九乘法表的思路: 其实我们在用for循环打印乘法表的时候,用的是...

INEVITABLE
37分钟前
9
0
sql 练习

创建需要的4张表 首先创建student、course、score、teacher这四张表。 student表 创建student表 CREATE TABLE IF NOT EXISTS student(sno TINYINT UNSIGNED NOT NULL,sname VARCHAR(20......

Garphy
38分钟前
12
0
vSphere的两种虚拟交换机

VMware vSphere 6.7中支持两种虚拟交换机: 1、标准交换机,VSS - Virtual Standard Switch 2、分布式交换机,VDS - Virtual Distributed Switch VSS与ESXi主机一一对应,即一个VSS只能部署在...

大别阿郎
40分钟前
11
0
webGL和three.js的关系

本文转载于:专业的前端网站➤webGL和three.js的关系 如今浏览器的功能越来越强大,而且这些功能可能通过JavaScript直接调用。你可以用HTML5标签轻松地添加音频和视频,而且可以在HTML5画布上...

前端老手
今天
9
0
Spring如何实现AOP,请不要再说cglib了!

1. 从注解入手找到对应核心类 最近工作中我都是基于注解实现AOP功能,常用的开启AOP的注解是@EnableAspectJAutoProxy,我们就从它入手。 上面的动图的流程的步骤就是: @EnableAspectJAutoPr...

温安适
今天
43
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部