当我们使用 maven-archetype-plugin
插件基于当前项目生成一个 achvetype
模板项目是,默认的该插件会把当前项目下所有的文件都会打包到 jar
包中。
很多时候我们希望在 build
的时候能过滤一些非必要的文件目录,如 .idea
、项目 README.md
说明文件等等,这时候我们需要在构建的时候,配置一个 achvetype.properties
文件参数,并在其中定义 excludePattern
属性来过滤文件或目录:
# 构建是传入配置文件
mvn archetype:create-from-project -Darchetype.properties=archetype.properties
archetype.properties
文件内置如下:
# 打包过滤文件
excludePatterns=.idea/*,README.md
excludePatterns
可以指定多个过滤条件,以英文逗号分割即可,不过需要注意的是,如果想过滤整个目录,如 .idea
目录,需要配置为: .idea/*
而不能仅填写为 idea
,这个 .gitignore
配置还是有差别的。
作者:猿谋人
博客:https://yuankan.co