(1)maven package直接打包
(2)maven-assembly-plugin
(3)maven-shade-plugin
这是了解到的三种打包。
第一种是直接打包,没有用插件,问题是不会把项目的依赖包打包,作为执行包可能会出错。
后面两个是插件。网上说(2)有bug,多个依赖包可能会依赖不同版本的同一个包,这时会把这个包的某一个版本打包,然后就会出错。
插件(3)会把这个包的所有版本都打包。(2)的goal有single、help;(3)的goal的goal有shade、help
1 | <plugins> |
maven-compiler-plugin用来编译Java代码,maven-resources-plugin则用来处理资源文件。
默认的主资源文件目录是src/main/resources,很多用户会需要添加额外的资源文件目录,这个时候就可以通过配置maven-resources-plugin来实现。此外,资源文件过滤也是Maven的一大特性,你可以在资源文件中使用${propertyName}形式的Maven属性,然后配置maven-resources-plugin开启对资源文件的过滤,之后就可以针对不同环境通过命令行或者Profile传入属性的值,以实现更为灵活的构建。
总结自:http://chenzhou123520.iteye.com/blog/1706242
链接:https://www.jianshu.com/p/ce01bb1615a8
在项目下pom.xml的project节点下创建了开发环境和线上环境的profile
1 | <profiles> |
其中id代表这个环境的唯一标识.
properties下我们我们自己自定义了标签env,内容分别是dev和prd。
activeByDefault=true代表如果不指定某个固定id的profile,那么就使用这个环境.
参考:https://www.cnblogs.com/nfcm/p/7550772.html