linux(centos6.5)下部署springboot jar包用 *.sh 文件启动项目并将项目做成开机自启动服务
2018-10-17 09:36
2775 查看
版权声明:转载请注明出处。 原文作者:Lily@g 原文链接:https://blog.csdn.net/weixin_42389328/article/details/83104214
第一种方法:非自启动方式
1.如果你使用的是maven来管理项目,执行以下命令进行项目打包:
[code]cd 项目跟目录(和pom.xml同级) mvn clean package ## 或者执行下面的命令 ## 排除测试代码后进行打包 mvn clean package -Dmaven.test.skip=true
执行后会在项目更目录下生成一个target文件会生成一个*.jar 文件,这样打包就完成了,接下来在linux下部署
2.将jar文件传到linux目录下(这里我创建了一个java文件夹)
[code]cd /java #切换到java 目录下 vim /java/start.sh #在java目录下创建start.sh 文件 vi /java/start.sh # 执行此命令对start.sh 文件进行编辑 写入下列内容: #!/bin/sh rm -f tpid APP_NAME=familySign APP_JAR=$APP_NAME".jar" nohup java -Dfile.encoding=UTF-8 -jar $APP_JAR --spring.config.location=application.properties > ./logs/$APP_NAME".log" 2>&1 & echo $! > $APP_NAME".tpid" echo $APP_NAME Start Success! 编辑完成后 点击ESC键退出 输入 :wq 退出保存 给文件赋予执行权: chmod a+x start.sh chmod a+x familySign.jar 在java目录下执行 start.sh 文件 [root@localhost java]# ./start.sh familySign Start Success! 项目启动成功
在此需要注意的是:logs文件夹要手动创建。不然无法正常 运行。
如果项目停止项目运行:
[code]在java目录下创建stop.sh 文件 [root@localhost ~]# cd /java [root@localhost java]# vim /java/stop.sh 写入下列内容 #!/bin/sh APP_NAME=familySign tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'` if [ ${tpid} ]; then echo 'Stopping' $APP_NAME '...' kill -15 $tpid fi sleep 5 tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'` if [ ${tpid} ]; then echo 'Kill' $APP_NAME 'Process!' kill -9 $tpid else echo $APP_NAME 'Stoped Success!' fi 写入完成点击ESC键退出编辑 输入 :wq 退出保存文件 执行如下命令给stop.sh 文件赋予执行 chmod a+x stop.sh 执行stop.sh 文件 [root@localhost java]# ./stop.sh Stopping familySign ... 项目停止运行成功
chmod a+x 文件名 a 是指赋予所用用户执行权
到这里项目的的打包部署就完成了。
第二种方式 :开机自启动服务
1.将项目运行添加为开机自启动服务:
[code][root@localhost ~]# cd /etc/init.d [root@localhost init.d]# vim /etc/init.d/autostart #!/bin/sh #chkconfig: 2345 80 90 rm -f tpid APP_NAME=/java/familySign_API/familySign #jar 包路径 根据自己的修改 APP_JAR=$APP_NAME".jar" export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_171 export JRE=/usr/lib/jvm/jdk1.8.0_171/jre export CLASSPATH=$JAVAHOME/lib:$JRE/lib:. export PATH=$PATH:$JAVA_HOME/bin:$JRE/bin nohup java -Dfile.encoding=UTF-8 -jar $APP_JAR --spring.config.location=/java/familySign_API/application.properties > /java/familySign_API/logs/familySign".log" 2>&1 & echo $! > $APP_NAME".tpid" echo $APP_NAME Start Success! 同上编辑完成保存退出 chmod a+x autostart 赋予执行权 执行如下命令将autostart添加为自启服务 chkconfig --add autostart # (首先,添加为系统服务,注意add前面有两个横杠) chkconfig autostart on #开机自启 chkconfig --list (列表显示)查看是否添加到服务列表 service autostart start(启动服务,就是执行my的脚本) /java/familySign_API/familySign Start Success! 项目运行成功。
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_171
export JRE=/usr/lib/jvm/jdk1.8.0_171/jre
export CLASSPATH=$JAVAHOME/lib:$JRE/lib:.
export PATH=$PATH:$JAVA_HOME/bin:$JRE/bin
这个部分为jdk 环境变量,依据自己的安装目录进行更改即可;
可以重启服务器试试看是否启动成功。
阅读更多
相关文章推荐
- Linux(CentOS 7) 部署Spring Boot 打包的jar文件
- 微服务之部署SpringBoot项目至Linux服务器(CentOS)
- spring boot 打成jar包部署到Centos,从环境配置到开机启动服务
- 把spring-boot项目配置为Linux systemd服务,并注册自启动
- Spring-boot 微服务jar包方式启动,获取jar内资源文件到本地磁盘
- Linux(CentOS6.5)下Nginx注册系统服务(启动、停止、重启、重载等)&设置开机自启
- Linux Oracle服务启动&停止脚本与开机自启动
- Linux Oracle服务启动&停止脚本与开机自启动
- springboot打包jar包找不到jsp文件以及在linux永久执行java -jar以及springboot的多环境配置
- [一站式服务]Linux部署spring 定时操作项目
- CentOS6.5 安装Tomcat,设置服务并开机启动
- mac和linux下使用Docker,部署SpringBoot项目到docker
- IntelliJ IDEA Spring Boot(8)使用JSP,打包jar文件运行带有jsp的项目
- Linux Oracle服务启动&停止脚本与开机自启动
- 【Linux】Centos设置开机启动服务或者组件
- Linux Oracle服务启动&停止脚本与开机自启动
- Golang 在 Linux CentOS 6.5 服务器上实现 博客后台程序开机启动
- Spring Boot项目部署(Linux、maven)
- centos开机自动启动SVN服务的方法1、编辑rc.local文件
- Linux Oracle服务启动&停止脚本与开机自启动