如何从 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 中是否有符合您期望的内容。
我想更改通过插件代码传递给 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 中是否有符合您期望的内容。