DataGrip 2025.2 Help

IDE 无响应

当 DataGrip 无响应时,请考虑创建一个线程转储文件。 必须在 IDE 无响应时创建转储文件,并包含线程堆栈。 记录几个间隔 1-2 秒的线程转储可能对问题分析有帮助。

创建线程转储文件后,请将其归档并上传以与 JetBrains 支持团队共享。 请阅读 上传快照部分中的上传说明。

您可以通过以下选项创建线程转储:

使用 jstack

jstack 命令行工具打印 Java 线程的 Java 堆栈跟踪。 该工具随 JDK 安装提供,可在 JAVA_HOME\bin 目录中找到。

确保该工具与 DataGrip 使用的 JDK 版本相同。 例如,64 位 JDK 版本的工具无法用于运行在 32 位 JDK 版本下的 IDE。 要检查 JDK 版本,请按 Ctrl+Shift+A ,输入 About ,然后按 Enter

检查 JDK 版本

使用 jstack 创建线程转储

  1. 打开命令提示符。

  2. 列出系统上运行的 Java 进程及其命令行选项。 输入以下命令并按 Enter

    jps -mv
  3. 使用 IDE 进程标识符 (PID) 运行 jstack。 输入以下命令并按 Enter

    jstack -l <PID> > dump.txt

    此命令将线程转储打印到文件中。

    使用 jstack

自动线程转储

DataGrip 运行一个线程,当 UI 在一段时间内无响应时,会将自动线程转储写入日志目录。 要找到日志目录,请单击 帮助 | 在 <file_browser> 中显示日志。 您会发现几个名称类似于 threadDumps-freeze-20201215-083634-DB-211.3076 的文件夹。 将这些文件夹压缩并附加到您的工单中。

从控制台生成线程转储

根据您的操作系统,您可以在不使用 jstack 工具的情况下创建线程转储。

macOS

  1. 导航到 datagrip 文件所在的 IDE_HOME/DataGrip.app/Contents/MacOS/

    根据您安装 IDE 的方式, IDE_HOME 可能有所不同。 对于独立安装, IDE_HOME 如下: /Applications/ 。 通过 JetBrains Toolbox App 安装时,请按照以下步骤通过应用程序找到 IDE_HOME

    1. 打开 Toolbox App,单击相关 IDE 实例的垂直省略号图标(设置 ),然后选择 设置

    2. 设置 选项卡中,导航到 配置 | 安装位置 并单击 显示

    3. 在打开的文件浏览器窗口中,右键单击 DataGrip.app 以访问上下文菜单并选择 显示包内容

  2. 右键单击 datagrip 文件并选择 用 | 终端打开

  3. 按下 ⌃ \。 终端将打印线程转储。 要完成此过程,请按 ⌃ C

    thread-dump-on-microsoft-windows

Microsoft Windows

  1. 打开命令提示符。

  2. 通过使用 cd 命令,导航到 IDE 安装目录内 bin 目录中的 datagrip.bat 文件。

    根据您安装 IDE 的方式,安装目录可能有所不同。 对于独立安装,安装目录如下: C:\Program Files\JetBrains\DataGrip <version_number>\ 。 通过 JetBrains Toolbox App 安装时,请按照以下步骤通过应用程序找到安装目录:

    1. 打开 Toolbox App,单击相关 IDE 实例的垂直省略号图标(设置 ),然后选择 设置

    2. 设置 选项卡中,导航到 配置 | 安装位置 并单击 显示

    3. 在打开的文件浏览器窗口中,右键单击 DataGrip.app 以访问上下文菜单并选择 显示包内容

  3. 运行 datagrip.bat 文件。

    datagrip.bat > output.txt
  4. 按下 Ctrl+Break。 终端将打印线程转储。 要完成此过程,请按 Ctrl+C

Unix

  1. 运行 IDE 安装目录内 bin 目录中的 datagrip.sh 文件。

    根据您安装 IDE 的方式,安装目录可能有所不同。 对于独立安装,安装目录可能是您选择的任何目录。 通过 JetBrains Toolbox App 安装时,请按照以下步骤通过应用程序找到安装目录:

    1. 打开 Toolbox App,单击相关 IDE 实例的垂直省略号图标(设置 ),然后选择 设置

    2. 设置 选项卡中,导航到 配置 | 安装位置 并单击 显示

    3. 在打开的文件浏览器窗口中,右键单击 DataGrip.app 以访问上下文菜单并选择 显示包内容

  2. 通过使用进程管理器(例如, pshtopjps ),获取进程 ID (PID)。

  3. 运行以下命令或向进程发送 SIGQUIT 信号。 线程转储将打印在终端窗口中。

    db_thread_dump_on_unix
最后修改日期: 2025年 9月 26日