IDE 无响应
当 GoLand 无响应时,请考虑创建线程转储文件。 必须在 IDE 无响应时创建转储文件,并包含线程堆栈信息。 以 1–2 秒的间隔记录多个线程转储文件可能有助于分析问题。
创建线程转储文件后,请将其打包并上传,以便与 JetBrains 支持团队共享。 请参阅 “上传快照”部分中的上传说明。
您可以通过以下方式创建线程转储文件:
使用 jstack
jstack 命令行工具可打印 Java 线程的 Java 堆栈跟踪信息。 该工具包含在 JDK 安装中,可在 JAVA_HOME\bin 目录中找到。
请确保该工具使用与 GoLand 相同的 JDK 版本。 例如,64 位 JDK 的该工具无法用于运行在 32 位 JDK 上的 IDE。 要查看 JDK 版本,请按 Ctrl+Shift+A ,输入 关于 ,然后按 Enter。

使用 jstack 创建线程转储
打开命令提示符。
列出系统上运行的 Java 进程及其命令行选项。 键入以下命令并按 Enter。
jps -mv使用 IDE 的进程标识符(PID)运行 jstack。 键入以下命令并按 Enter。
jstack -l <PID> > dump.txt此命令将线程转储输出至文件中。

自动线程转储
GoLand 会运行一个线程,用于检测 UI 在一段时间内无响应的情况,并自动将线程转储写入日志目录。 要查找日志目录,请单击 。 您将看到多个名称类似于 threadDumps-freeze-20201215-083644-GO-211.3076 的文件夹。 请将这些文件夹压缩并附加至您的支持请求中。
从控制台生成线程转储
根据操作系统的不同,您也可以在不使用 jstack 工具的情况下创建线程转储。
macOS
导航至 goland 文件,路径位于 IDE_HOME/GoLand.app/Contents/MacOS/ 中。
根据 IDE 的安装方式不同, IDE_HOME 可能有所不同。 对于独立安装, IDE_HOME 的路径如下: /Applications/ 。 如果通过 JetBrains Toolbox App 安装,请按照以下步骤通过应用查找 IDE_HOME :
打开 Toolbox App,点击对应 IDE 实例的垂直省略号图标(
),然后选择 设置。
在 设置 选项卡中,导航至 并单击 显示。
在打开的文件浏览器窗口中,右键点击 GoLand.app 以打开上下文菜单,然后选择 显示包内容。
右键点击 goland 文件并选择 。
按 ⌃ \ 键。 终端将打印线程转储信息。 若要完成该操作,请按 ⌃ C。

Microsoft Windows
打开命令提示符。
使用
cd命令导航至 IDE 安装目录下的 goland.bat 文件所在的 bin 目录。根据 IDE 的安装方式不同,安装目录可能有所不同。 对于独立安装,安装目录如下: C:\Program Files\JetBrains\GoLand <version_number>\ 。 如果通过 JetBrains Toolbox App 安装,请按照以下步骤通过应用程序查找安装目录:
打开 Toolbox App,点击对应 IDE 实例的垂直省略号图标(
),然后选择 设置。
在 设置 标签页中,导航到 并点击 显示。
在打开的文件浏览器窗口中,右键点击 GoLand.app 以访问上下文菜单,然后选择 显示包内容。
运行 goland.bat 文件。
goland.bat > output.txt按下 Ctrl+Break。 终端将打印线程转储。 要完成该过程,请按下 Ctrl+C。
Unix
在 IDE 安装目录下的 bin 目录中运行 goland.sh 文件。
根据您安装 IDE 的方式不同,安装目录可能有所不同。 对于独立安装,安装目录可能是您选择的任意目录。 通过 JetBrains Toolbox App安装的情况下,请按照以下步骤通过应用程序查找安装目录:
打开 Toolbox App,点击相关 IDE 实例的垂直省略号图标(
),然后选择 设置。
在 设置 标签页中,导航到 并点击 显示。
在打开的文件浏览器窗口中,右键点击 GoLand.app 以访问上下文菜单,然后选择 显示包内容。
通过使用进程管理器(例如
ps、htop、jps),获取进程 ID(PID)。运行以下命令或向进程发送 SIGQUIT 信号。 线程转储将打印在终端窗口中。
