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 为程序日志