maven-shade-plugin~打包时过滤项目中某些包
maven-shade-plugin可以用来进行打包,并实现在打包过程中的一些过滤、排除、包含、重命名等一系列操作,当我们设计公用项目时,有时在项目时会有一些测试用例,如果在打包时想把这些测试包排除,使用maven-shade-plugin
插件是个不错的选择。
打包包含和排除
下面的代码实现了以下几个功能:
- 打包时排除com.lind.uaa.jwt.three包下的所有内容
- 打包时排除项目的properties类型的配置文件
- 打包时,com.baomidou组织的包添加到当然JAR包里,默认是不会添加到当前包的
createSourcesJar
选项实现了打包时为源代码再打一个包
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<!-- 过滤器排除配置文件-->
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>**/*.properties</exclude>
<exclude>com/lind/uaa/jwt/three/**</exclude>
</excludes>
</filter>
</filters>
<artifactSet>
<!-- 捆绑包含,目标项目不需要再手动引用这个包了 -->
<includes>
<include>com.baomidou:*</include>
</includes>
</artifactSet>
<createSourcesJar>true</createSourcesJar>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
2018-12-13 transient和synchronized的使用
2017-12-13 数据库~大叔通过脚本生成poco实体
2016-12-13 MongoDB学习笔记~数据模型属性为集合时应该为它初始化
2013-12-13 DDD~领域服务的规约模式
2013-12-13 我也来说说DDD~大话目录
2012-12-13 爱上MVC3系列~PartialView()与View()真的一样吗?
2012-12-13 爱上MVC3系列~手动向路由表扔数据,不影响当前URL路由配对