Ⅰ.前言
使用IDE等工具通过 https://start.spring.io/ 创建项目非常方便,但是限于网络原因,有时候无法访问。Spring Initializr提供了搭建个人Initialzr项目的支持,通过参考 http://blog.csdn.net/chszs/article/details/51713174 有很多细节没有描述清楚。
Ⅱ.开始搭建
1. 通过 https://start.spring.io/ 创建一个Maven web项目
2. 添加依赖
1 | <dependency> |
3. 启动运行
运行报错,无法引入依赖。仔细查找文档,https://github.com/spring-io/initializr README中有说明:
简单翻译下:Spring Initializr没有在Maven仓库中提供,你需要自己从源码构建。
4. Clone源码,按照源码提示进行编译
1 | //进入 initialzr项目目录,执行(好慢,我大概执行了1个小时) |
执行成功结果
5.再次启动运行,异常
1 | 2017-07-05 10:33:51.265 ERROR 134836 --- [ main] o.s.b.f.s.DefaultListableBeanFactory : Destroy method on bean with name 'org.springframework.boot.autoconfigure.internalCachingMetadataReaderFactory' threw an exception |
异常没有找到解决方案。补充:后来发现是编译缓存的问题。清楚缓存或者重建项目后,恢复正常。
通过截图可以看出依赖等配置都是空的。
6.自定义配置
编辑application.yml配置文件。详见配置文件以及官方文档
Ⅲ.项目源码
https://github.com/CharlesSong/OwnInitializr
Ⅳ.待解决问题
1.默认生成application.yml配置文件
在Issue中看到,现在并不支持默认生成application.yml。原因是IDE对yml支持不友好。
2.如何添加一些额外的信息到生成的项目中?
比如:服务中心、配置中心的配置、通用jar包、数据库配置等
3.其他
其实,如果编译源码构建之后,就没必要自己搭建了。直接把源码打包部署到服务器即可,还继承了应用监控。