springboot项目部署在linux上运行的两种方式小结
作者:qq_2993678989 发布时间:2022-09-17 11:07:37
springboot部署项目在linux的两种方式 可以选择 war包方式或者jar包方式(个人推荐使用jar方式)
1.springboot的jar包方式
因为idea默认就是jar打包方式所以直接使用maven工具按照步骤点击就可以直接打包
打包之前别忘了修改好你的配置文件,别到时候端口号冲突启动不了(多个同样的端口号),假如要使用linux上的数据库也要提前修改好密码
然后控制台就会输出执行过程,不用管,最后结束了就会这如图红框处找到输出路径.
找到这个文件把他扔到你的linux虚拟机里,找到它,然后输入下列命令
nohup java -jar weather.jar &
weather.jar换成你jar包的名字,这个是我的名字
这个命令的意思是后台运行的意思,他会把输出日志默认存放在你的同级目录下的nohup.out里,文件为自动创建,当然你也可以进行其他方法启动,具体请自行百度
ps -ef | grep weather.jar
使用这条命令查看是否已启动
可以看到已启动并且进程号为19075,使用这个进程号可以进行结束进程,
kill 19075
然后我们再来查看weather.jar的启动状态
发现已经结束了,
让我们来再次启动并且通过浏览器浏览是否能正常运行,
可以正常访问,ok
如果未能正常启动可以查看nohup.out,看看日志应该就能找到问题了
2.springboot的war包方式
因为maven默认打包方式为jar包所以需要修改打包方式
在你的pom文件里添加一个<packaging>war</packaging>
然后修改主类,继承SpringBootServletInitializer类
重写configure方法
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application){
return application.sources(WeatherApplication.class);
}
红框处需要修改为你的主类类名,然后再用maven工具打包
就会发现结果为war包
把他扔到你的linux上的tomcat你的webapps文件夹里
然后启动你的tomcat,等一会就会发现多出一个项目文件夹
然后访问地址就可以看到tomcat已经帮你运行起来了
来源:https://blog.csdn.net/qq_2993678989/article/details/103246055


猜你喜欢
- 背景:当我们有需求将HashMap转为Json格式的String时,切记不要使用HashMap的toString()方法,需要使用FastJ
- Android Studio常用快捷键、Android Studio快捷键大全接下来这篇android studio使用教程,主要为大家介绍
- //可以包括其他字符 public string uncode(string str) { string outStr = "&q
- 前言:quartz是一个定时调度的框架,就目前市场上来说,其实有比quartz更优秀的一些定时调度框架,不但性能比quartz好,学习成本更
- 前言 * 体系是Struts2框架的重要组成部分,不夸张的说,没有 * 体系,也就没有这么好用的Struts2框架了。在Struts2框架中
- Java实现并发的几种方法Java程序默认以单线程方式运行。synchronizedJava 用过synchronized 关键字来保证一次
- 本文实例为大家分享了OpenCV实现人脸识别程序的具体代码,供大家参考,具体内容如下//Haar特征检测,人脸识别算法,是用xml作为训练后
- 本文实例讲述了Java 线程的生命周期。分享给大家供大家参考,具体如下:一 代码/*** @Title: ThreadStatus.java
- 目录有状态组件异步 async/await引入 flutter_easyrefresh使用 flutter_easyrefresh运行结果结
- 第一步:代码混淆(注意引入的第三方jar)在新版本的ADT创建项目时,混码的文件不再是proguard.cfg,而是project.prop
- 本文实例为大家分享了Android自定义控制条效果的具体代码,供大家参考,具体内容如下ControlBar自定义一个可以调节大小的控件,可以
- ArrayList和LinkedList都实现了List接口,有以下的不同点:1、ArrayList是基于索引的数据接口,它的底层是数组。它
- 守护线程在Java中有两类线程User Thread(用户线程)Daemon Thread(守护线程)守护线程的功能非常简单,在其本身是一个
- 1、创建控制台程序如上图所示,选择linux开发平台,我用的VS2019,.Net5.0,一直点下一步,创建。2、创建TCP服务端程序usi
- 测试环境为Adnroid 2.1以上。 1.AndroidManifest.xml 权限配置: 添加互联网访问权限: <uses-pe
- 在X86的环境下,var wParam = (int)msg.WParam;工作得很好。在X64的环境下,快速滚动滚轮会出现msg.WPar
- 这几天一直都在捣鼓android的知识点,兴趣班的老师,讲课太过深奥,天(想到什么就见什么,后后面完全不想听),最后自己找资料总结了在And
- 最近遇到一个问题,用RecyclerView显示数据,纵向列表显示,添加默认分割线。问题是:底部也会显示分割线,这很影响美观。怎么解决这个问
- 终日惶惶,不知归路;一日写起代码,突发奇想,若是在运行时发现自定义上下文的数据丢失,我们该如何解决处理数据丢失的问题?问题复现一下,大家看下
- 一、 HttpURLConnection以GET方式访问网络:HttpURLConnection connection = null;try