如何从 Intellij 平台插件代码更改 CMake 选项?

How to change CMake options from the Intellij platform plugin code?

我想更改通过插件代码传递给 CMake 命令的一些选项。不幸的是,我不知道该怎么做。

是否有任何 API 与 CLion 特定功能进行通信?

设置 -> 构建、执行、部署 -> CMake -> CMake 选项

你说的是"CMake command",不清楚。我猜您想更改 CMake 位置。

此代码可以为您提供一个 CPPToolchains.Toolchain 实例:

val Project.toolchains: CPPToolchains
    get() = ServiceManager
            .getService(this, CPPToolchains::class.java)
            .toolchains
            .firstOrNull()

或者如果你不懂 Kotlin,使用 Java:

CPPToolchains.Toolchain tools = ServiceManager
        .getService(project, CPPToolchains.class)
        .getToolchains().get(0);

并且您可以通过

等代码获取设置
tools.getCMake().getExecutable()

或通过调用

等方法来更改它们
com.jetbrains.cidr.cpp.toolchains.CPPToolchains.Toolchain#setCustomMakePath

只需探索这些 class 方法和方法,您就会得到想要的。

如果仍然找不到,请尝试将前两个代码中的 CPPToolchains 替换为 CMakeSettings,看看 class 中是否有符合您期望的内容。