在介绍clife-data-parent项目前,先来讲讲打包方式与运行环境的区别:
一、打包方式
1.build-app与build-spark
1).bin目录
用来存放当前项目的启动脚本,如图:
image.png
2).conf目录,存放当前项目的配置文件
3).lib目录:存放项目依赖以及当前项目代码,如下图:
image.png
build-spark与build-app生成的包,主要区别在bin下的脚本内容不一样,以及主项目jar,与bin同一级目录,不能存在与lib目录内,如下图: image.png
2.build-jar
这种打包方式就是将当前项目打包成一个单独的jar文件,不包含依赖,以供其他项目导入。如果进行maven install到共同的maven仓库,其他开发人员只需要配置对应的maven仓库即可引入这个jar,这种模式对于工具包和服务依赖上存在很好的解耦性。
3.build-web
这是将项目打包成一个war包,在java web开发很常用。
二、运行环境
对于运行环境,这里很好理解,一般正常的项目发布环境流程包含了:开发->测试->预发布->正式,不同的环境具体的配置项会存在差异,这里通过resource-xxx来进行环境的区分,默认打包resource,勾选不同额环境,在打包后cong目录下就会打包不同环境下的配置文件。当然,这种配置管理的方式并不是最优的,这里推荐使用百度的disconf,具体如何使用参照百度disconf接口文档。
image.png这种项目打包方式,1.可以有效的减少项目发布时的人工操作;2.可以解耦多项目间的耦合性;3.对于协同开发有着很好的作用。下一次来具体讲讲parent模块。
网友评论