【问题标题】:Failed Maven build remains stuck when using jmx使用 jmx 时,失败的 Maven 构建仍然卡住
【发布时间】:2022-06-12 18:59:45
【问题描述】:

我正在使用(几乎)最新的 Intellij Ultimate 2022.1.1(与最新的 VS Code 相同)和 JDK 8 和 maven 3.6.3(无法升级)

执行 Maven 构建(作为编译/打包)时失败(例如编译错误)

我无法重新运行,因为 java.exe 进程仍在使用端口 1100,我必须手动终止

作为一种解决方法,我在命令行中动态终止进程

FOR /F "tokens=5 delims= " %P IN ('netstat -a -n -o ^| findstr :1100') DO TaskKill.exe /F /PID %P

jps 输出:

RMI Registry not available at 11808:1099
Exception creating connection to: 11808; nested exception is:
        java.net.SocketException: Network is unreachable: connect

**编辑**

问题是由于环境变量MAVEN_OPTS jmxremote.port 1100 用于activate JMX for JConsole

-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=1100

【问题讨论】:

  • 您的构建是否在普通命令行中工作?为什么java进程使用1100端口?由哪一个?
  • 哪个进程执行maven构建?你的意思是从 IntelliJ 内部?您使用哪个版本的 IntelliJ?您使用哪个版本的 Maven、JDK 等?此外,错误消息也会有所帮助...
  • 默认情况下,您的 Maven 构建应该不需要任何网络端口。听起来好像在构建期间正在运行测试。
  • 为什么要使用旧的 Maven 版本? 3.6.3 ???在 IntelliJ 2022.1.1 中,默认情况下是 Maven 3.8.1 ...此外,是的,默认情况下不应使用任何端口...听起来您的一个测试正在使用端口?您是否通过 WebMVC 或类似方式进行了 Spring Boot 测试?
  • 仔细看看卡在哪里。您可以在命令行中使用jps 来定位您想了解的旧进程

标签: java maven port jmx


猜你喜欢
  • 2010-11-26
  • 1970-01-01
  • 2018-10-23
  • 2014-08-17
  • 1970-01-01
  • 1970-01-01
  • 2014-12-31
  • 2017-11-30
  • 1970-01-01
相关资源
最近更新 更多