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}"

相关推荐
小玉起起12 小时前
IntelliJ IDEA 2025.1 Java Stream Debugger 快速使用指南
java·intellij-idea·idea
十八旬18 小时前
【超简单】后端入门案例-基于SpringBoot+MyBatis-plus+MySQL图书管理系统
java·开发语言·idea·intellij idea·项目实战
东方芷兰1 天前
Leetcode 刷题记录 21 —— 技巧
java·算法·leetcode·职场和发展·github·idea
稻草猫.3 天前
Java多线程(一)
java·后端·java-ee·idea
猫头虎8 天前
IDE mac M芯片安装报错:如何解决“InsCode.app 已损坏”,无法打开
ide·vscode·macos·inscode·编辑器·idea·mac
Doris_LMS8 天前
Git的强软硬回退(三)
运维·服务器·数据库·git·idea
Doris_LMS9 天前
Git在idea中的实战使用经验(二)
linux·运维·gitlab·idea
十八旬10 天前
苍穹外卖项目实战(日记十四)-记录实战教程及问题的解决方法-(day3课后作业) 菜品停售启售功能
数据库·windows·spring boot·阿里云·idea
窗外的寒风10 天前
vscode炒股插件-韭菜盒子AI版
vscode·idea
Doris_LMS10 天前
Git在idea中的实战使用经验(一)
java·git·gitlab·idea