springboot使用jar包
1、打成jar包使用
idea默认会将springboot打成jar包,会在target目录下生成项目的jar
运行:
1.1window环境
启动1:可以直接使用java -jar xxx.jar 启动jar包,然后即可在浏览器中访问。注意:我的springboot项目是加了web插件的。
启动2:在xx.jar同级目录下建立run.bat文件,在run.bat文件中编辑下列文本。双击运行即可
1 @echo off 2 start javaw -jar demo1-0.0.1-SNAPSHOT.jar 3 exit
关闭方式:在window任务管理器中,添加查看命令行,通过命令行查看是如何启动的,关闭对应进程即可
1.2linux环境
将jar上传到linux环境,使用命令执行jar包
nohup java -jar demo.jar > consoleMsg.log 2>&1 &
该命令会让jar程序在后台运行,就是不会输出一大堆的启动信息给你。而是将信息写到consoleMsg.log文件中,这是因为使用nohup命令是默认写入nohup.log文件,这里强制指定。
此处我遇到疑问,该如何访问远程上的接口呢?端口是什么?
其实这些信息在启动信息中都写了,只要查看consoleMsg文件即可知道。。。。
并且第一次启动时,项目启动失败了,查看文件知道,是端口可能被占用了,因为springboot默认使用8080端口
使用命令netstat -lnp|grep 8080查看端口被什么进程占用了,结果发现好像是jvm虚拟机,我就去改springboot的默认端口
在application.properties中添加service.port=8091,将端口修改,重新部署,项目即可访问
关闭方式:
在启动时,上面的命令是会返回pid的,
如果没记住,可以用jps命令找到jar的pid,
不过启动多个jar就会分不清了,还可以用ps -ef|grep xxxx.jar 找到对应的jar的pid
用kill -9 pid 即可关闭