idea 服务器Debug端口启动设置

一:在阿里云服务器安全组已经设置了端口授权对象:

正确命令:

nohup java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9998 -jar -Duser.timezone=GMT+08 -Xms256m -Xmx256m /opt/projects/*/*/*-starter-1.0-SNAPSHOT.jar --spring.profiles.active=test > sys01.log 2>&1 &

执行上面不成功时,执行下面命令【主要设置标红的地方】:

nohup java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=0.0.0.0:9998 -jar -Duser.timezone=GMT+08 -Xms256m -Xmx256m /opt/projects/*/*/*-starter-1.0-SNAPSHOT.jar --server.address=0.0.0.0 --spring.profiles.active=test > sys01.log 2>&1 &

然后本地远程Debug,ok

二:编辑启动命令:

创建文件start.sh,并进行授权 chmod +x start.sh

先发送 TERM 信号让应用优雅关闭,只有在超时后才使用 KILL 强制终止

#!/bin/bash

JAR_NAME="**-admin.jar"

LOG_FILE="/tmp/${JAR_NAME}.log"

echo "Stopping procedure: ${JAR_NAME}"

获取匹配的进程ID

pid=(ps -ef \| grep java \| grep "{JAR_NAME}" | awk '{print $2}')

if [ -n "$pid" ]; then

echo "Found old process with PID: $pid, attempting to stop it..."

kill -TERM $pid # 发送TERM信号,允许程序优雅关闭

等待最多30秒让进程退出

timeout=30

while [ timeout -gt 0 \] \&\& kill -0 pid 2>/dev/null; do

echo "Waiting for process pid to terminate... (timeout seconds left)"

sleep 1

((timeout--))

done

如果进程仍然存在,则强制杀死

if kill -0 $pid 2>/dev/null; then

echo "Force killing process $pid"

kill -9 $pid

sleep 2 # 给系统一点时间清理资源

else

echo "Process $pid stopped gracefully"

fi

else

echo "No running process found for ${JAR_NAME}"

fi

启动新服务

echo "Starting new instance of ${JAR_NAME}"

nohup java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9998 \

-jar \

-XX:MetaspaceSize=512m \

-XX:MaxMetaspaceSize=512m \

-Xms1024m \

-Xmx1024m \

-Xmn128m \

-Xss256k \

-XX:SurvivorRatio=8 \

-XX:+UseConcMarkSweepGC \

/www/wwwroot/api/${JAR_NAME} \

--spring.profiles.active=dev > ${LOG_FILE} 2>&1 &

echo "New instance started in background. Logs redirected to ${LOG_FILE}"

相关推荐
想躺平的咸鱼干2 天前
RabbitMQ 基础
java·分布式·rabbitmq·idea·amqp·消息转换器·交换机模型
optimistic_chen8 天前
【Java EE进阶 --- SpringBoot】初识Spring(创建SpringBoot项目)
spring boot·后端·spring·java-ee·tomcat·mvc·idea
猫头虎10 天前
如何解决 JetBrains IntelliJ IDEA 2024.2 和 2025.2 新版本区域选择问题:key is invalid
java·ide·pycharm·intellij-idea·idea·intellij idea·phpstorm
hweiyu0017 天前
IDEA搭建GO环境
开发语言·后端·golang·intellij-idea·idea·intellij idea
BUG?不,是彩蛋!17 天前
从零开始用 Eclipse 写第一个 Java 程序:HelloWorld 全流程 + 避坑指南
java·eclipse·idea
死牛胖子21 天前
调整Idea缓存目录,释放C盘空间
idea
Joker—H1 个月前
【Java】Reflection反射(代理模式)
java·开发语言·经验分享·代理模式·idea
无名客01 个月前
JAVA_TWO-初识Java2
java·intellij-idea·idea·java基础
设计师小聂!1 个月前
尚庭公寓--------登陆流程介绍以及功能代码
java·spring boot·maven·mybatis·idea