linux java 项目 设置外部yml 设置jvm 并添加启动停止以及重启脚本

linux安装 jdk1.8

jdk1.8 可私聊我发给你

1.在/usr/local 下 用mkdir 新建了一个文件夹 java然后把文件上传到java里面

2.命令 tar -zxvf jdk-8u221-linux-x64.tar.gz 解压

3.用 vim /etc/profile 命令 配置环境变量,按下 键盘上的 i 进入编辑模式

添加如下变量

注意jdk1.8.0_221为我解压后的jdk1.8文件夹名称

export JAVA_HOME=/usr/local/java/jdk1.8.0_221
export JRE_HOME=/usr/local/java/jdk1.8.0_221/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

配置好以后使用命令
source /etc/profile
使配置生效

然后输入javac回车,
输入 java -version 显示jdk的版本

编写启动停止重启sh脚本 来控制程序启动停止

#!/bin/sh
source /etc/profile
PATH=/usr/local/bin:$PATH

#配置jar名称
APP_NAME=springboot.jar

#使用说明,用来提示输入参数
usage() {
echo "Please input [start|stop|restart|status]"
exit 1
}

#检查程序是否在运行
is_exist(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return 1
else
return 0
fi
}

#启动方法
start(){
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is already running. pid=${pid} ."
else
nohup java -jar -Xms800m -Xmx800m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:MaxNewSize=512m  -Dspring.profiles.active=application.yml  ${APP_NAME}   > ${APP_NAME}log.out 2>&1 &
echo "${APP_NAME} start success"
fi
}

#停止方法
stop(){
is_exist
if [ $? -eq "0" ]; then
kill -9 $pid
else
echo "${APP_NAME} is not running"
fi
}

#输出运行状态
status(){
is_exist
if [ $? -eq "0" ]; then
echo "${APP_NAME} is running. Pid is ${pid}"
else
echo "${APP_NAME} is NOT running."
fi
}

#重启
restart(){
stop
start
}

#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac

注意

1,只需要更改APP_NAME= 里面的jar包地址就可以 如果在同一目录就直接是jar包名称

2,输出的日志为当前sh脚本启动目录的 jar包名称加上log.out

如程序为 springboot.jar 输出的日志为 springboot.jarlog.out

使用 tauk -100f springboot.jarlog.out 来查看最新的日志 排错或查看

3,配置文件application.yml 放到了jar包程序的同级目录 因为方便进行配置文件的修改重启 整体目录为 如图



1 为配置文件 如配置启动端口 数据库 redis 等 都在此配置
2 为启动脚本
3 为程序包
4 为程序日志

到此程序就在linux 上部署完成啦

相关文章

java实现zip文件的解压 java解压压缩包到指定文件夹

一、导入相关依赖包<dependency> <groupId>org.apache.ant</groupId> <artifactId>...

Linux中常用的打包,压缩,解压 tar指令 zip指令

1.gzip 命令gzip 会就地压缩,也就是源文件会被压缩文件替代。解压缩 加指令 -d 2. xz 命令默认情况下,xz 命令也是就地压缩,原始文件将被覆盖。解压缩 加指令 -d 3.zip 命令...

Linux常用命令-解压缩篇 linux解压命令zxvf

前言Linux常用命令中,有很多用于对文件的压缩或解压,本文将介绍这些解压缩命令中不常见却非常实用的用法。tartar是linux中最常用的解压缩命令。tar命令可用于处理后缀名为tar,tar.gz...

如何使用Java API操作HDFS系统? java api hdfs

1.搭建项目环境打开Eclipse选择FileàNewàMaven Project创建Maven工程,选择“Create a simple project ”选项,点击【Next】按钮,会进入“New...

甲骨文:Java始终与Windows XP不离不弃

IT之家(www.ithome.com):甲骨文:Java始终与Windows XP不离不弃7月4日,Java美国官网正式宣布Java 8不再支持Windows XP,不少XP用户担忧Java将停止X...

程序员的福音 - Apache Commons Compress

此文是系列文章第五篇,前几篇请点击链接查看程序猿的福音 - Apache Commons简介程序员的福音 - Apache Commons Lang程序员的福音 - Apache Commons IO...