本地搭建spring initializr 的jar包

本地搭建spring initializr 的jar包

前置条件:java8、 maven 、python2
源码来源:https://github.com/spring-io/start.spring.io

前言:在公司用内网,无法访问start.spring.io,自然就不能方便的创建spring工程,就想自己搞个本地服务器,结果掉进了大坑。

首先声明源码来源,在网上找到的教程绝大部分使用的是这个资源:https://github.com/spring-io/initializr,但是我这个死活弄不好,打包成功后运行initializr-service,访问端口就会报这个错:Could not determine version based on ‘2.4.0-SNAPSHOT’: version format is Minor.Major.Patch.Qualifier (e.g. 1.0.5.RELEASE)] with root cause。。。就算后面用idea构建工程模仿service构建web服务,也不能成功。后面巧合换到隔壁另一个项目start.spring.io才有新的进展。

第一步:clone源码

git clone https://github.com/spring-io/start.spring.io

第二步:进入initializr文件夹下,进行maven的spring格式矫正,因为这个项目的maven插件用了spring-javaformat,而有的地方却不符合spring风格,需要额外矫正。

mvn spring-javaformat:apply

第三步:查找该工程文件夹下所有pom文件,删除里面关于maven插件git-commit-id-plugin的引用,因为该工程是远程拉取的,不会把各个子模块内的.git文件夹拉下来,但偏偏commit-id-plugin会检查.git是否完整规范…只能先删了,也不碍事
第四步:

mvn clean install -DskipTests

这是一个漫长的过程,中间会因为一些插件,而下载npm,yarn。一些下载超时的可以自己浏览器下好放到指定目录,注意一定要先安装好python2,因为yarn会调用python2.exe,找不到会卡死报错。
一切正常的话,会在maven的仓库里多出这个包start-site-0.0.1-SNAPSHOT-exec.jar。
这之后用java -jar start-site-0.0.1-SNAPSHOT-exec.jar就能在本地访问。

你可能感兴趣的:(后端)