SpringBoot31-springboot开发部署与测试-开发热部署和常规部署
来源:互联网 发布:b碗动作数据 编辑:程序博客网 时间:2024/06/05 05:21
一,开发的热部署
1,模板热部署
在spring boot里,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面是得不到修改后的页面的,因此我们可以在applicaiotn.properties中关闭模板引擎的缓存,例如:
Thymeleaf的配置:
spring.thymeleaf.cache=false
FreeMarker的配置:
spring.freemarker.cache=false
Groovy的配置:
spring.groovy.template.cache=false
Velocity的配置:
spring.velocity.cache=false
2,spring loaded
spring loaded可实现修改类文件的热部署,具体使用可以网上查下资料
3,JRebel
JRebel是java开发热部署的最佳工具,其对spring boot也提供了极佳的支持,JRebel为收费软件,可试用一段时间。
4,spring-boot-devtools
在spring boot项目中添加spring-boot-devtools依赖即可实现页面和代码的热部署。
注意:使用这个依赖包,需要编译器的支持,比如IDEA需要进行编辑器的配置后,才能配合这个包进行热部署。使用其他编辑器,如果引入了包不能进行热部署,查看下资料是否需要编辑器的支持。
二,常规部署
1,jar形式
1)打包
若我们在新建spring boot项目的时候,选择打包方式(packaging)是jar,则我们只需要用:
mvn package
or
mvn clean install -Dmaven.test.skip=true
2,运行
可直接使用下面命令运行:
java -jar xx.jar
3,注册为Linux的服务
Linux下运行的软件我们通常把它注册为服务,这样我们就可以通过命令开启,关闭以及保持开机启动等功能。
若想使用此项功能,我们需要将代码中关于spring-boot-maven-plugin的配置修改为:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><executable>true</executable></configuration></plugin></plugins></build>
然后使用mvn package打包。
主流的linux大多数使用init.d或systemd来注册服务。
1)基于Linux的init.d部署
注册服务,在cenos6.6的终端执行:
sudo ln -s /var/xx/xxx.jar /etc/init.d/ch10
其中ch10就是我们的服务名。
启动服务:
service ch10 start
停止服务:
service ch10 stop
服务状态:
service ch10 status
开机启动:
chkconfig ch10 on
项目日志存放于/var/log/ch10.log下,可用cat或tail等命令查看
比如:tail -f ch10.log
cat ch10.log
2)基于Linux的Systemd部署
在/etc/systemd/system/目录下新建ch10.service,填入下面的内容:
Description=ch10
After=syslog.target
[Service]
ExecStart= /usr/bin/java -jar /var/xx/xx.jar
[Install]
WantedBy=multi-user.target
注意:在实际使用中修改Description和ExecStart后面的内容。
启动服务:
systemctl start ch10
停止服务:
systemctl stop ch10
服务状态:
systemctl status ch10
开机启动:
systemctl enable ch10 or systemctl enable ch10.service
项目日志:
journalctl -u ch10
or journalctl -u ch10.service
4,war形式
1)打包方式为war时
新建spring boot项目的时候选择打包的方式为war形式,或者在pom.xml里面进行配置
比如:<packaging>war</packaging>
2)打包为jar包时
新建spring boot项目的时候选择打包的方式为jar形式,或者在pom.xml里面进行配置
<packaging>jar</packaging>
- SpringBoot31-springboot开发部署与测试-开发热部署和常规部署
- idea开发springboot热部署问题
- SpringBoot32-springboot开发部署与测试-云部署,基于Docker的部署
- SpringBoot33-springboot开发部署与测试-spring boot测试
- jrebel热部署开发
- springboot热启动与热部署
- 【唯快不破】学习开发springboot怎么能不先配置热部署?
- springboot开发环境热部署(idea下)
- springboot-热部署
- SpringBoot热部署
- springboot实现热部署
- springboot热部署
- SpringBoot热部署配置
- SpringBoot+devtools 热部署
- Springboot(热部署)
- SpringBoot热部署
- SpringBoot+SpringLoaded热部署
- SpringBoot实现热部署
- NOIP2016 DAY1T2 天天爱跑步
- Python学习笔记2
- 愤怒的小鸟(满分版)
- 计算二叉树的最大宽度(非递归)
- UVa10934
- SpringBoot31-springboot开发部署与测试-开发热部署和常规部署
- leetcode13
- Shiro入门学习五
- JAVA8的简单列子
- 字节序列
- 什么是跨域,如何解决基本的跨域问题?
- 支配树[模板]
- PHP-AMQP实践应用
- JVM调优