codecamp

IntelliJ IDEA启用与配置调试器

启动 IntelliJ IDEA 调试器

开始调试前您需要达到下列要求:

  • 配置调试器选项。
  • 指定要传递给调试器(Debugger)的根、依赖关系和库。
  • 在源代码中设置断点。
  • 如有必要,创建或修改相应的运行/调试配置

调试会话以所选的运行/调试配置开始,可以同时启动多个调试进程。

在 IntelliJ IDEA 中调试应用程序时,请记住:

  • 如果选择了 "在运行/调试/重新加载之前制作模块" 选项,IntelliJ IDEA 首先编译项目中的所有修改的源。
  • IntelliJ IDEA 继续进行调试,如果编译报告没有错误。
  • 如果代码在调试之前尚未编译,则源文件和类文件可能不同步。
  • 如果您在 "VM 选项" 字段中指定了类路径选项,所选的模块类路径将被覆盖。
  • 如果您调试 JavaScript 源代码,IntelliJ IDEA 会在单独的框架中为您的脚本打开 HTML 文件的浏览器。

调试应用程序

要开始调试应用程序, 请执行下列操作之一:

  • 选择要执行的运行/调试配置,然后执行以下操作之一:
    • 点击左边沟槽中的图标,然后选择
    • 点击工具栏上的
    • 在主菜单上选择:运行| 调试(Run | Debug)。
    • 按 Shift+F9。
  • 按 Shift+Alt+F9,从弹出菜单中选择配置,然后按 Enter。

请注意,在您启动调试会话后,标记调试工具窗口的图标会切换到指示了调试过程处于活动状态。

配置调试器选项

IntelliJ IDEA 支持 Java 和 Groovy 应用程序、类和文件的调试。调试功能集成在 IntelliJ IDEA 中,您只需配置其设置。

根据启用的插件,IntelliJ IDEA 还可以支持其他语言的调试,例如 JavaScript、Flex 或 PHP。

IntelliJ IDEA 支持仅在内部或外部 Web 服务器上运行的调试应用程序,仅在 Google chrome 和 chrome 家族的其他浏览器中。

配置调试器设置

要配置调试所需的设置,请执行以下常规步骤:

  1. 在 "项目结构" 对话框 (Ctrl + Shift + Alt + S) 中,配置要传递给编译器的根、依赖关系和库。
  2. 在“设置/首选项”对话框中,配置调试器选项:
    • 在 "生成、执行和部署" 部分下,指向 "编译器节点",单击 "Java 编译器" 或 "RMI 编译器",然后选中 "生成调试信息" 复选框。
    • 在 "生成、执行和部署" 部分下,单击调试器,并根据需要定义调试器选项。

暂停并恢复调试器会话

当断点被触发时,或者当正在运行的线程或应用程序被手动暂停时,调试会话被暂停。

若要暂停调试器会话,请执行下列操作之一:

  • 在主菜单上选择:运行| 暂停程序(Run | Pause Program)。
  • 单击 "调试" 工具栏上的

    请注意,该按钮对于运行/调试配置:Node.js、运行/调试配置:Node.js 远程调试和运行/调试配置:NodeUnit 不可用。

若要恢复调试器会话,请执行下列操作之一:

  • 在主菜单上选择:运行| 恢复程序(Run | Resume Program)。
  • 单击调试工具栏上的
  • 按 F9。
IntelliJ IDEA如何启用、禁用和删除断点
通过分析框架检查暂停的IntelliJ IDEA程序
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }