写下这篇文章是为了记录第一次发布Spring Boot项目的过程。
SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。
(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs; (2)内嵌Tomcat或Jetty等Servlet容器; (3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置; (4)尽可能自动配置Spring容器; (5)提供准备好的特性,如指标、健康检查和外部化配置; (6)绝对没有代码生成,不需要XML配置。
在上面说到内嵌Tomcat或jetty等sevlet容器,基于Maven可以创建可执行的Jar包和War包。总结得非常到位,但是动手操作时,就会遇到一些知识总结以外的具体操作的问题——那就是过程。 首先,可执行jar包在windows上不可以直接运行。其次,在命令行中java -jar去执行,一旦命令窗口关闭或服务器宕机重启,服务即停止。
在写部署的三种方式之前,感谢一下Intellij IDEA,刚开始还不习惯,但通过一个项目熟悉下来,太好用了!在Tab Split、Git、Maven Projects、代码折叠、代码风格等。
在这里要特别感谢这篇文章,写得特别好: 《在windows服务器上使用winsw部署spring boot项目》 Spring Boot官方参考文档:https://docs.spring.io/spring-boot/docs/2.0.8.RELEASE/reference/htmlsingle/#deployment-windows 上一笔代过,而这篇文章图文结合清晰地告诉你,如何使用winsw。winsw是一个开源项目,程序以及源码都可以在gitHub上下载。 winsw下载及文档:https://github.com/kohsuke/winsw 下载以下文件:
#####1.1.1 将项目打成jar包
#####1.1.2 配置非常好用的winsw的Service.xml 根据文章中的内容进行搭建也可以,根据官方文档使用**rotate**,由于个人水平有限,加上时间关系,没有去研究彻底log mode的详细配置,在此记录下来。 配置参考文档:https://github.com/kohsuke/winsw/blob/master/doc/xmlConfigFile.md#user-content-logging
因此我参考另一篇文章:《如何将Spring Boot项目部署为Windows服务,并设置开机启动》,修改如下:
原因:中文乱码 解决办法:Notepad++转为UTF-8编码
按照第二篇文章中说的:
我的服务器上配置了环境变量,但无法启动,错误1067。 原因:还没有时间进行排查,在此先记录下来。 解决:直接指定jdk路径:C:\Program Files\Java\jdk1.8.0_231\bin\java.exe
参考一篇文章:《SpringBoot 打包成war包,部署到tomcat》 说得很清晰,根据我的项目情况,稍作调整即可。
为什么方式一不满足我的需求呢?当项目中遇到只有小的bug修复,甚至只改了一个类文件或者配置文件,前端页面的一个参数时,方式一非常慢。 所以,在网上看到了一篇好文:《Springboot 打jar包分离lib,配置文件正确方式(二)》 #####操作步骤
一、打成jar包,直接通过java -jar启动;+winsw2.3.0实现服务自动启动 二、调整pom.xml,新建启动类,打成war包,在tomcat中启动 三、打成jar包,分离lib、配置文件与静态资源;+winsw2.3.0实现服务自动启动 为了在使用过程中,维护与升级更方便,推荐使用后面两种模式。
您需要 登录 才可以下载或查看,没有账号?立即注册
使用道具 举报
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
特级红客
4 小时前
5 小时前
中国红客联盟公众号
联系站长QQ:5520533