maven常用的插件有哪些
这篇文章主要介绍了maven常用的插件有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
背景
maven 常用的三个插件对打包有不同的作用:
maven-jar-plugin:处理 jar 包生成;
spring-boot-maven-plugin:SpringBoot 项目打包;
maven-assembly-plugin:自定义打包结构。
而实际开发过程中这三个插件可能都综合使用,本文类介绍混合使用这些插件时需要注意的事项。
SpringBoot 打包时排除文件
SpringBoot 项目打包时一般会抽出配置文件和静态资源文件到指定目录,然后通过 --spring.config.additional-location=file:xxx
额外指定配置文件。
这样的话,SpringBoot 打包时就需要排除配置文件和静态资源文件,可以用 maven-ja-pluginr
插件来排除:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.2.0</version> <configuration> <excludes> <exclude>*.yml</exclude> <exclude>static/**</exclude> <exclude>lib/**</exclude> </excludes> </configuration> </plugin>
注意:如果排除文件夹,需要后面两个星星。
Spring 打包本地依赖 jar
如果项目需要依赖本地某目录下的 jar 包,而它又没有在仓库中发布的话,可以通过如下方式添加依赖:
<dependency> <groupId>XXXX</groupId> <artifactId>XXX</artifactId> <version>1.0.0</version> <scope>system</scope> <systemPath>${project.basedir}/src/main/resources/lib/xxx.jar</systemPath> </dependency>
值得注意的是,如果项目用了 SpringBoot 打包插件,默认是不会将 system 作用域的 jar 打入 lib 目录的,需要添加 includeSystemScope
配置将第三方 jar 包加入到 lib :
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <includeSystemScope>true</includeSystemScope> </configuration> </plugin>
编译时排除指定文件
pom.xml 的 resources
配置可以对资源文件进行筛选,常见配置如下:
<resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <excludes> <exclude>static/**</exclude> <exclude>*.yml</exclude> </excludes> </resource> </resources>
该方式会直接影响编译时资源文件的处理过程,即 target 目录下的 classes 目录中就不包括指定文件,从而导致本地运行时缺少配置文件,所以开发期间不建议用这种方式。
复制粘贴的原则
想起以前看到的一段经典话语:
我从互联网上得到的最好的经验之一,就是永远不要复制和粘贴不是自己编写的代码。如果你一定要复制,那就照着它逐字输入,逼着自己思考,这些代码实际上是什么意思。
除了代码需要复制粘贴,平时文档编写时也免不了拿旧文档做模板。
word 文档编写过程中,如果内容是复制、粘贴的,我的经验是,完成后必做几项检查:
标题:检查文档中的标题、系统名称是否更正为目标文档的内容。目录更正:文档页码变化后,必须重新生成目录与之对应。修改内容校对:修改过的内容,需要校对至少三遍。
感谢你能够认真阅读完这篇文章,希望小编分享的“maven常用的插件有哪些”这篇文章对大家有帮助,同时也希望大家多多支持蜗牛博客,关注蜗牛博客行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
评论