我们在开发spirngboot的时候,一般有两种部署方式可以选择,就是jar包部署和war包部署。
我们以前开发ssh或者ssm,基本都是war包形式,需要部署进tomcat等容器中。现在使用springboot,一般都会选择jar包部署,打包运行都十分方便。
常用的jar包部署
jar包形式很简单,首先用maven打包,可以使用工具,也可以使用命令:
mvn packages
比如打包好的jar包名字为 app.jar ,那么运行命令为:
java -jar app.jar
后台运行,命令为(注意最后的符号不能省略):
nohup java -jar app.jar &
这样就是用jar包形式部署成功了。
在Linux下,经常将jar包部署的项目注册为linux服务。
首先先将插件修改配置:

然后打包,命名为app.jar,并上传到linux中的/packages目录下。
现在在centos7中注册服务。
首先将jar包设置成可执行文件,命令入下:
cd /packages
chmod +x app.jar
然后在/etc/init.d下创建软链接:
ln -s /packages/app.jar /etc/init.d/myapp
然后启动服务:
service myapp start
添加开机启动:
chkconfig myapp on
注意:如果出现如下提示信息,需要JAVA_HOME环境属性,可以制定配置文件
unable to find java
在jar包的同一目录下,创建名称和jar包一样,后缀为conf的文件:
vim app.conf
比如jdk的路径为 /user/jdk8,name文件内容如下:
JAVA_HOME=/usr/jdk8
然后启动发现成功!

war包部署
war包方式部署也很简单,新建springboot的时候,直接选择打包方式为war,


选择好以后,下载下来,然后倒入项目中,可以看到,基本和jar的结构一样,区别是,主目录中多了一个类:


然后执行打包命令,可以看到打出的是war包:


写一个简单的接口:

重新打包,并把war包改名为app.war,并把war包放到tomcat中,可以看到启动成功:

然后访问路径 http://localhost:8080/app/hello

注意:直接在项目代码中启动不用输入war包的名字,但是在tomcat的webapp文件夹中需要输入war包的名字访问。如果不想输入可以放在ROOT目录下。
代码地址: https://gitee.com/blueses/spring-boot-demo
网友评论