温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java模块怎么调试

发布时间:2026-09-19 05:14:17 来源:亿速云 阅读:86 作者:小樊 栏目:编程语言

在 Java 里“调试模块”通常有两种理解,下面分别说明,你可以看哪一种更符合你的情况。


一、调试普通 Java 项目(最常见)

1. 使用 IDE 调试(推荐)

IntelliJ IDEA

  • 在代码行号左侧点击 → 打断点
  • 右键类或方法 → Debug 'XXX'
  • 程序会在断点处暂停
  • 调试面板可以:
    • 查看变量(Variables)
    • 单步执行(Step Over / Into)
    • 查看调用栈(Frames)
    • 表达式求值(Evaluate Expression)

Eclipse

  • 双击行号打断点
  • 右键 → Debug As → Java Application

2. 使用命令行调试(不常用)

javac -g Hello.java
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005 Hello

然后用 IDE 远程连接 5005 端口调试。


二、调试 Java 9+ 的「模块系统」(Module / JPMS)

如果你说的是 Java Module System(module-info.java),调试重点在模块依赖和访问权限。

1. 常见模块问题

  • Module not found
  • package xxx is not visible
  • cannot access class due to module boundaries

2. 调试模块依赖

查看模块描述

java --describe-module java.base

查看当前模块信息

java --list-modules

编译时调试

javac -d out \
  --module-path lib \
  --module-source-path src \
  src/com.example/module-info.java

运行时调试

java --module-path out:lib \
     --module com.example/com.example.Main

3. IDE 中对模块调试

  • IntelliJ IDEA 会自动识别 module-info.java
  • 在 Run/Debug Configurations 中:
    • 选择 Module
    • 指定 Module path
  • 断点调试方式与普通 Java 完全一致

三、调试技巧(非常实用)

1. 打印模块信息

System.out.println(
    getClass().getModule().getName()
);

2. 临时放开模块限制(调试用)

--add-opens java.base/java.lang=ALL-UNNAMED

3. 日志型调试

System.err.println("DEBUG: " + value);

四、你的问题更偏向哪一种?

你可以直接告诉我:

  • ✅ 是用 IDEA / Eclipse 调试普通 Java?
  • ✅ 是 module-info.java 报错?
  • ✅ 是 Maven / Gradle 多模块项目?
  • ✅ 是 远程调试 / 服务器调试?

我可以给你更精确的调试步骤。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手