CLion 2025.1 最新变化

CLion 2025.1 为 CLion Nova 语言引擎带来了新功能和改进,以及针对调试、嵌入式开发和项目格式的更新。 它还提供了多种免费和增强的 AI Assistant 功能,例如在 C/C++ 代码中处理自然语言提示,以及直接在聊天中编辑多个文件。

主要更新

对 CLion Nova 中项目外文件的支持

CLion Nova 现在为项目中未包含的头文件和源文件提供完整的代码分析和代码辅助功能。 例如,当您只需要编辑 .cpp 文件中不属于构建的某些代码时,这就可以发挥作用。

了解详情

调试器中的 Qt 渲染器

检查挂起的 Qt 应用程序时,调试器现在允许您以人类可读的形式查看变量。 这简化了在 CLion 中使用 Qt 框架开发和调试跨平台应用程序的过程。

了解详情

ST-LINK 调试服务器 实验性

我们添加了专为 STM32 芯片设计的 ST-LINK 调试服务器模板。 它只包含最基本和必要的设置,有助于简化 STM32 项目的调试。

了解详情

west build 选项和 sysbuild 支持

处理 Zephyr 项目时,您现在可以使用 west build 命令选项以及将 sysbuild 作为主要构建系统。 这在配置 Zephyr 项目(包括涉及硬件的项目)时提供了更大的灵活性。

了解详情

免费 AI Assistant 功能

现在,所有 AI Assistant 功能在 CLion 和其他 JetBrains IDE 中均可免费使用。 无限制代码补全和本地模型支持等部分功能完全不受限制,其他功能则有基于抵用金的受限访问。 在新订阅系统下,可以通过 AI Pro 和 AI Ultimate 层级根据需要轻松扩展。

Among the new features are multi-file edits directly from the chat and support for cloud models like Claude 3.7 Sonnet, OpenAI GPT-4.1 (сoming soon), and Gemini 2.0 Flash.

了解详情

CLion Nova

项目外文件

CLion Nova 现在可以正确支持项目中未包含且在构建过程中未使用的头文件和源文件。 这意味着在处理这些文件时,您可以获得完整的代码分析和代码辅助功能,就像处理常规项目文件一样。

例如,您可能只是想打开一个未包含在项目中的 .cpp 文件来编辑一些代码段。 现在,您可以在这样操作的同时享受所有可用必要功能,例如代码格式设置、输入辅助、代码补全等。

当前实现涵盖大多数用途,我们还计划收集反馈来解决边缘用例

对 Objective-C 的基本支持

现在,您在处理 Objective-C 源文件时可以获得语法高亮显示、警告、代码补全建议以及 clangd 提供的其他功能。

由于这仍然是基本支持,部分功能,例如编辑器的智能按键和重构,可能无法运作。 此外,CLion Nova 可能无法正确处理 Objective-C 头文件。 如果您对 CLion Nova 中的完整 Objective-C 支持感兴趣,请关注或点赞 CPP-37281

设置、操作和智能按键

CLion Nova 获得了一些以前仅在 CLion Classic 中可用的设置、操作和智能按键。 这些功能使得使用 CLion Nova 进行的开发更加方便。 以下是几个示例:

  • C/C++ 自动导入选项,例如 Auto import local files with quotes(使用引号自动导入本地文件)和 Auto import on completion(补全时自动导入)。
  • 一些编辑器操作,包括使用快捷键将文本光标移动到代码块的开头或末尾的功能。
  • 一些智能按键,例如 Unindent on Backspace(按退格时取消缩进)和 Surround selection on typing quote or brace(输入引号或大括号时包围选区)。

Bazel 项目中的 GoogleTest 和 Catch2 支持

CLion Nova 现在支持在 Bazel 项目中使用 GoogleTestCatch2 测试框架。

如需详细了解单元测试的基础知识以及如何在 CLion 中使用测试工具,请阅读我们的教程

调试器

Qt 呈现器

Qt 呈现器,也称为 Qt pretty printer 和 Qt 调试助手,允许您以人类可读形式查看 Qt 变量,例如 QStringQListQByteArray。 这使得开发和调试使用 Qt 框架构建的应用程序更加方便。

此功能默认启用,但使用前,您需要下载 Qt 呈现器并指定路径:

  1. 转到 Settings | Build, Execution, Deployment | Debugger | Data Views | C/C++ | Enable Qt renderers(设置 | 构建、执行、部署 | 调试器 | 数据视图 | C/C++ | 启用 Qt 呈现器)。
  2. 点击 Download…(下载…) (Qt renderers(Qt 渲染器)字段旁边)。
  3. 出现 Download Qt Renderers(下载 Qt 呈现器)窗口时,点击 Download Qt Renderers(下载 Qt 呈现器)。 下载完成后,路径将自动指定。
  4. 点击 OK(确定)。

注意,Qt 呈现器尚不能与远程和 WSL 工具链一起使用。

对自定义 LLDB 调试器的支持

除了捆绑的 LLDB(当前为 v19.1.3)之外,您现在可以在 macOS 或 Linux 上使用自定义 LLDB。 这使您可以选择最适合项目要求的 LLDB 版本。

转到 Settings | Toolchains(设置 | 工具链),选择 Debugger(调试器)字段中的 Custom LLDB executable(自定义 LLDB 可执行文件)。 然后,CLion 将自动尝试查找系统上安装的自定义 LLDB。 您也可以手动指定它的位置。

当前局限:

  • 自定义 LLDB 尚不能与 WSL、Docker 或远程主机工具链一起使用。
  • 自定义 LLDB 可用于 macOS 和 Linux,但目前在 Windows 上不受支持。

将双通道 OpenCV 矩阵作为图像查看的选项

在调试使用 OpenCV 的计算机视觉或机器学习应用程序时,您可以将 OpenCV 矩阵作为图像查看。 CLion 2025.1 扩展了此功能,允许您将双通道矩阵(例如 cv::Mat m(2, 3, CV_8UC2))作为图像查看。

要将代码中的双通道 OpenCV 矩阵作为图像查看,请选择调试器的 Threads & Variables(线程和变量)窗格,导航到矩阵,然后点击 View as image(作为图像查看)。

.natvis 文件的自定义位置

Natvis 呈现器(Natvis 可视化器)允许您在使用 MSVC 调试器时为不同数据类型定义可视化规则。 以前,CLion 只能从项目目录加载 .natvis 文件,这不够灵活,尤其是在使用 Git 或其他版本控制系统时。 现在,您可以为 .natvis 文件指定自定义位置。

转到 Settings | Build, Execution, Deployment | Debugger | Data Views | C/C++(设置 | 构建、执行、部署 | 调试器 | 数据视图 | C/C++),添加带有 Natvis 呈现器的额外目录。 您可以在文档中详细了解如何使用 Natvis 文件。

嵌入式开发

调试 STM32 项目时,您现在可以使用专为 STM32 芯片设计的 ST-LINK 调试服务器模板。 它只包含最基本和必要的设置,有助于简化配置过程。

转到 Settings | Build, Execution, Deployment | Debugger | Debug Servers(设置 | 构建、执行、部署 | 调试器 | 调试服务器),点击 +,选择 ST-LINK 模板。 然后,配置调试服务器、设备和调试器参数。

注意,ST-LINK 配置选项仅适用于:

  • 随 STM32CubeCLT 和 STM32CubeIDE 提供的 ST-LINK GDB 服务器。
  • ST-LINK/V2 和 ST-LINK/V3 探头。
  • 单核与双核 MCU。

STM32CubeMX New Project(新建项目)向导

我们更新了 STM32CubeMX 项目创建流程,以提高实用性并增加对更多 STM32 芯片和项目的支持。 CLion 使用原生 STM32CubeMX 方式生成 CMake 文件,可以确保项目创建与官方 STM32CubeMX 工作流和工具链完全一致。

我们将继续改进 STM32CubeMX New Project(新建项目)向导,我们期待您的反馈 (CPP-42553)。

Serial Port Monitor 插件改进

现在,使用 Serial Port Monitor 插件时,您可以查看和管理 DTR、DSR、RTS 和 CTS 硬件控制信号。 这使您可以更好地控制使用串行端口的附加设备,例如 Arduino 和 ESP32。

启用硬件控制信号:

  • Serial Connections(串行连接)工具窗口中,导航到 Connect(连接)标签页。
  • 选择所需 COM 端口。
  • 点击 Show HW controls(显示 HW 控制)复选框。

控制选项和指示器将出现在 COM 端口标签页中。

您还可以在监视器输出中查看时间戳,这有助于详细跟踪消息序列。

项目格式和构建工具

west build 选项和 sysbuild 支持

处理 Zephyr 项目时,您现在可以使用 west build 命令选项以及将 sysbuild 作为主要构建系统。 这两项功能可以在配置 Zephyr 项目(包括涉及硬件的项目)时提供更大的灵活性。

使用 Settings | Build, Execution, Deployment | Embedded Development | West | Advanced Settings(设置 | 构建、执行、部署 | 嵌入式开发 | West | 高级设置)为 west build 命令传递额外参数,例如自定义开发板的路径或底层构建工具的选项。

Sysbuild 能够为具有多个 SoC(片上系统)或具有多个 CPU 核心的 SoC 的开发板构建多个映像。 您可以传递 --sysbuild 以及任意其他选项,从相同的 Advanced Settings(高级设置)部分启用 sysbuild。

CMake Presets v10

捆绑的 CMake 版本已经更新到 v3.31.4,包含对 CMake Presets v10 的支持。 预设存储为 JSON 文件,适合为 CMake 项目指定通用配置和构建选项以与其他用户共享。

AI Assistant 更新

免费层级、新的云模型等

现在,所有 AI Assistant 功能在 CLion 和其他 JetBrains IDE 中均可免费使用,使 AI 赋能开发更加便捷高效。 无限制代码补全和本地模型支持等部分功能完全不受限制,其他功能则有基于抵用金的受限访问。 在新订阅系统下,可以通过 AI Pro 和 AI Ultimate 层级根据需要轻松扩展。

其他增强可以提高工作效率并减少重复任务:

  • 更智能的代码补全。
  • Support for new cloud models like Claude 3.7 Sonnet, OpenAI GPT-4.1 (сoming soon), and Gemini 2.0 Flash.
  • 基于 RAG 的先进上下文感知。
  • 可以直接在聊天中编辑多个文件的新编辑模式。

针对 C/C++ 的自然语言内联提示

AI Assistant 已经学会理解 C/C++ 的自然语言提示。 编写提示并按 Tab 后,AI Assistant 会对其进行解释并将其转换为代码更改,同时考虑项目的上下文。 如果您想改进一些建议的更改,您可以将其撤消、修改提示,或添加接续消息。