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

相关推荐
过期动态1 天前
Java开发中的@EnableWebMvc注解和WebMvcConfigurer接口
java·开发语言·spring boot·spring·tomcat·maven·idea
xoCxIDrpRmTZ1 天前
200smart动态密码程序,触摸屏是smartline,西门子动态密码程序,,随机码的产生...
idea
CaracalTiger5 天前
什么是Clawdbot?Clawdbot下载、安装、配置教程(最新版Moltbot)
python·编辑器·aigc·idea·ai编程·intellij idea·agi
JavaGuide6 天前
IDEA 里终于能爽用 Claude Code了!
java·idea·springai
张橙子6 天前
idea优化之标签页显示优化,让查找更高效
idea·开发工具
草履虫建模7 天前
A02 Maven 基础配置:本地仓库、镜像、项目编码与常见问题(IDEA 实战)
xml·java·spring boot·spring·maven·intellij-idea·idea
草履虫建模7 天前
A01 开发环境与第一个 Java 程序(IDEA / JDK / Maven 基础)
java·spring·jdk·maven·intellij-idea·idea·基础
( •̀∀•́ )9207 天前
IntelliJ IDEA快捷键
idea·开发工具
JavaGuide11 天前
IntelliJ IDEA 2026.1 EAP 发布!拥抱 Java 26,Spring Boot 4 深度支持!
java·后端·mysql·springboot·idea·大厂面试·javaguide
C++ 老炮儿的技术栈11 天前
Qt中自定义 QmyBattery 电池组件开发
c语言·开发语言·c++·windows·qt·idea·visual studio