使用mvn制作archetype时过滤特定文件目录

650 阅读1分钟

当我们使用 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 配置还是有差别的。

作者:猿谋人
博客:yuankan.co