spring boot 部署为jar
来源:互联网 发布:js倒计时跳转页面代码 编辑:程序博客网 时间:2024/06/13 08:01
前言
一直在ide中敲代码,使用命令行mvn spring-boot:run
或者gradlew bootRun
来运行spring boot项目。想来放到prod上面也应该很简单。然而今天试了下,各种问题。最大错误是1.4的bug:
Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: Unable to resolve persistence unit root URL
这个错误使我一直以为自己的代码有问题。找了半天没找到,最后想既然命令行可以运行ok,那么一个fat jar失败肯定不对了。于是上github去问,以为石沉大海准备睡觉的。想不到的是spring boot的成员秒回,找到问题是1.4版本中hibernate自动配置的问题,想我根本不需要hibernate,删除就可以了。
github 原问题:https://github.com/spring-projects/spring-boot/issues/6927
部署为可运行的jar
spring boot已经尽可能把需要配置的东西自动化了,我还傻傻的像以前springmvc那样补充各种配置,比如加一个数据源druid。然而大可不必,使用默认的就好,等需求不满足的时候,在进行修改就可以了。
同样的,既然内置的tomat可以很好的运行,为啥非要自己手动部署war包?
在gradle build或者maven package之后,会得到一个jar,这个jar是spring boot修改过的jar,可以直接运行。
运行方式:
java -jar xxxx.jar
看到比较好的linux脚本:
start.sh
#!/bin/shrm -f tpidnohup java -jar myapp.jar --spring.config.location=application.yml > /dev/null 2>&1 &echo $! > tpidecho Start Success!
stop.sh
#!/bin/shAPP_NAME=myapptpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`if [ ${tpid} ]; then echo 'Stop Process...' kill -15 $tpidfisleep 5tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`if [ ${tpid} ]; then echo 'Kill Process!' kill -9 $tpidelse echo 'Stop Success!'fi
check.sh
#!/bin/shAPP_NAME=myapptpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`if [ ${tpid} ]; then echo 'App is running.'else echo 'App is NOT running.'fi
kill.sh
#!/bin/shAPP_NAME=myapptpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`if [ ${tpid} ]; then echo 'Kill Process!' kill -9 $tpidfi
博主不得转载,但还是看了怎么办:
Spring Boot 部署与服务配置
0 0
- spring boot 部署为jar
- spring boot jar部署内存不足
- spring boot jar 部署linux服务器
- SPRING BOOT jar linux部署脚本
- Cent OS 部署 Spring Boot jar 包
- Spring boot Jar 通过服务方式部署
- Spring Boot打包war jar 部署tomcat
- Spring boot打包war、jar部署tomcat
- spring boot jar部署遇到的问题
- Web项目切换为Spring-boot部署
- Spring Boot学习笔记-Nginx+Jar包部署项目
- Spring Boot 部署(jar和war的区别)
- Spring Boot系列(五)创建jar与热部署
- spring-boot:将工程打为jar可执行包
- Spring-boot将项目打为jar包发布
- spring mvc 编译的jar包,部署为windows 服务
- 部署Spring Boot应用
- 部署spring boot应用
- 控制EditText不让输入中文(输入内容类型)
- 【知识整理】javascript基础语法总结(5)——数组
- 在CentOS 7/6.5/6.4 中安装Java JDK 8(转载)
- linux centos中添加删除修改环境变量,设置java环境变量
- CentOS7使用firewalld打开关闭防火墙与端口(转载)
- spring boot 部署为jar
- 在PowerShell中使用curl(Invoke-WebRequest)
- 在centos7中添加一个新用户,并授权
- android分享支付经验分享
- 自定义的下拉刷新和上拉刷新
- 如何优化coding
- 从老庄到黄老之学
- Spring resource bundle多语言,单引号format异常
- 如何实时查看mysql当前连接数