背景
进行分布式服务开发, 各服务均划分了各自的消息协议项目/应用服务项目, 这些项目骨架相同, 仅仅是项目名和包名有个别字的区别; 为此, 笔者经过调研后选择使用giter8
来创建项目骨架模板, 后期项目均使用该模板生成项目.
安装giter8
笔者仅介绍OSX的安装方法, 其它平台的安装详见:
- http://www.foundweekends.org/giter8/setup.html
- https://yanbin.gitbooks.io/giter8/content/giter8/setup.html
1 | brew install giter8 |
创建模板
创建模板的规则和最佳实践
- 项目名必须以
.g8
结尾 - 项目模板放置于
src/main/g8
目录下, 若该目录不存在, 使用项目根目录取而代之(不推荐) - 模板中的
default.properties
定义待输入的变量和默认值- 属性可以放置在任何地方, 文件内容/文件名/路径
name
熟悉兼做项目创建时的目录名package
属性用在路径上时会进行目录展开description
定义的字符串会首先被g8
显示出来
- 由于使用
git
无法提交空目录, 针对有目录为空的目录, 在其内添加文件.gitkeep
模板样例
- 协议模板: https://github.com/arccode/rest-api-protocol-template.g8
- 项目模板: 暂略
使用模板创建项目
- 本地:
g8 file:///Users/arccode/workspace/github/rest-api-protocol-template.g8
- github:
g8 arccode/rest-api-protocol-template.g8