> ## Documentation Index
> Fetch the complete documentation index at: https://docs.windsurf.com/llms.txt
> Use this file to discover all available pages before exploring further.

# JetBrains 故障排查

> 排查 JetBrains 插件相关问题，包括 JCEF 错误、证书问题、自定义工作区以及扩展诊断。

<div id="supported-versions">
  # 支持的版本
</div>

2022.3 及以上版本。

* 不支持 JetBrains Fleet 或 ReSharper
* 不支持远程 SSH。

<div id="gathering-extension-logs">
  # 收集扩展日志
</div>

从扩展版本 1.10.0 开始，Chat 面板的设置页面新增了 Extension Diagnostics 按钮。点击该按钮会自动收集相关日志和参数，并打包为可下载的文本文件。

对于较旧版本的扩展：

1. 日志会写入 idea.log 文件。要定位该文件，请通过菜单 `Help > Show Log in Finder/Explorer` 打开日志目录

2. 导出或复制日志

<div id="known-ide-issues-and-solutions">
  # 已知 IDE 问题及解决方案
</div>

<div id="cascade-not-being-displayed">
  ## 未显示 Cascade
</div>

通常，你会在日志中看到如下错误：

```
此环境不支持 JCEF 或 JCEF 初始化失败
```

或

```
不支持内部 JCEF，正在尝试外部 JCEF
```

JCEF 是用于显示 Cascade 的浏览器组件。要解决此问题，请前往 `Help > Find Actions > Choose Java Boot Runtime`，选择包含 JCEF 的运行时。
如果你的运行时已包含 JCEF，可能是 JCEF 在你的注册表/属性中被禁用了。
编辑你的属性：Help > Edit Custom Properties，添加以下标志并重启 IDE：

```
ide.browser.jcef.enabled=true
```

<div id="certificate-issues">
  ## 证书相关问题
</div>

如果您遇到以下错误：

```
无法获取扩展基础 URL,地址:<YourDomainURL>
```

```
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: 
unable to find valid certification path to requested target
```

这表明 Codeium 扩展无法信任到你的企业门户 / API 服务器的 TLS 连接，因为它不信任当前所提供的证书。这可能意味着由 Codeium 部署所提供的证书不受信任，或者拦截该请求的公司代理所提供的证书不受信任。

在这两种情况下，最理想的解决方案都是确保签发该证书的根证书已正确安装在终端用户机器的正确位置。JetBrains IDE 和大多数其他 IDE 会从操作系统的默认位置加载证书。

你的证书由本地 IT 或管理员团队签发并管理。请联系他们，协助在你的系统上安装所需的证书。

需要确保从终止 TLS 的位置完整地提供整个证书链。很多时候，如果只提供叶子证书，JetBrains IDE 和其他 IDE 将无法验证其真实性，因为它们并不知道用于验证叶子证书、并由根证书验证的中间证书。浏览器通常可以规避此问题，因为用户很可能访问过其他会提供完整证书链的网站，因此浏览器能够看到并缓存中间证书，但像 JetBrains IDE 这样的应用程序则没有这一优势。

**注意**：在 JetBrains 系列产品 **2024.3** 中引入了一个 bug，会导致 IDE 无法接受操作系统证书（[JetBrains 问题报告](https://youtrack.jetbrains.com/issue/IJPL-171446/Unable-to-find-valid-certification-path-to-requested-target-exception-in-Settings-Sync-when-proxy-is-used)）。为解决此问题，用户可以采取以下任一措施：

* 将 JB 产品降级到早期版本
* 使用 2024.3.1 预览版本（测试版）
* 添加 `-Djavax.net.ssl.trustStoreType=Windows-ROOT` 作为自定义 JVM 选项

<div id="custom-workspaces">
  ## 自定义工作区
</div>

当你在使用 Cascade 时遇到如下错误：

```
Cascade 无法在没有活动工作区时访问路径
```

这表明 Cascade 需要访问自定义工作区才能正常运行。要解决此问题：

1. 在 JetBrains IDE 中通过 `File > Settings`（或在 macOS 上通过 `IntelliJ IDEA > Preferences`）打开 Settings

2. 前往 `Tools > Windsurf Settings`

3. 在 Windsurf Settings 面板中，滚动至底部找到 "Custom Workspaces" 部分

4. 点击 "Add Workspace" 按钮以添加您的项目工作区

5. 为您的项目选择合适的工作区目录

6. 点击 "OK" 以应用设置

7. 重启 IDE 以使更改生效

<div id="enterprise-vs-non-enterprise-behavior">
  ### Enterprise 与非 Enterprise 行为差异
</div>

自定义工作区的行为会因你的用户类型而有所不同：

<div id="enterprise-users">
  #### Enterprise 用户
</div>

Enterprise 用户可对工作区索引进行选择性控制：

* 添加工作区时，你会看到一个复选框，可为每个工作区启用索引
* 只有勾选该复选框的工作区才会被索引，并供 Cascade 使用
* 这样你可以控制哪些工作区消耗索引资源
* 出于安全考虑，工具调用将被限制在活动工作区内

<div id="non-enterprise-users">
  #### 非 Enterprise 用户
</div>

非 Enterprise 用户将享有自动工作区索引：

* 你添加的任何工作区都会自动建立索引，无需勾选复选框
* 所有已添加的工作区会立即可供 Cascade 使用
* 工具调用在活动工作区之外也不会被阻止
* 在此模式下，选择性索引功能不适用

完成上述设置后，Cascade 应可访问你的工作区并正常运行。

<div id="keyboard-shortcuts-not-working-in-rider-on-windows">
  ## 在 Windows 平台 Rider 中键盘快捷键无法使用
</div>

如果你在 Windows 上使用 JetBrains Rider，并且遇到在 Cascade 中按下 Shift+Enter 无法创建新行，或者 Delete 键不起作用的问题，这是由于与 Rider 的 Unit Test Tool Window 存在快捷键冲突导致的。

这是一个影响 Rider 中 AI 插件的已知问题。要解决此问题：

1. 依次通过 `File > Settings` 打开 JetBrains IDE 设置

2. 转到 `Keymap`

3. 搜索 "Unit Test Tool Window Action"

4. 禁用或重新分配存在冲突的快捷键（Shift+Enter 和 Delete）

5. 重启 IDE 以使更改生效
