SplitModeAware

When you develop a plugin, you may want to check how it works in remote development mode, when one machine is running the backend part and another is running a frontend part (JetBrains Client) which connects to the backend.

This property allows running the IDE with backend and frontend parts running in separate processes. The developed plugin is installed in the backend part.

Split Mode requires the IntelliJ Platform in the version 241.14473 or later.

Inheritors

Types

Link copied to clipboard

Describes a part of the product where the developed plugin can be installed when running in splitMode.

Properties

Link copied to clipboard
@get:InputFiles
@get:PathSensitive(value = PathSensitivity.RELATIVE)
abstract val intelliJPlatformConfiguration: ConfigurableFileCollection

Holds the Configurations.INTELLIJ_PLATFORM_DEPENDENCY configuration with the IntelliJ Platform dependency added. It should not be directly accessed.

Link copied to clipboard
@get:InputFiles
@get:PathSensitive(value = PathSensitivity.RELATIVE)
abstract val intelliJPlatformPluginConfiguration: ConfigurableFileCollection

Holds the Configurations.INTELLIJ_PLATFORM_PLUGIN_DEPENDENCY configuration with the optional custom IntelliJ Platform plugins dependencies added. It should not be directly accessed.

Link copied to clipboard
@get:Internal
open val platformPath: Path

Provides access to the IntelliJ Platform dependency artifact path.

Link copied to clipboard
@get:Internal
open val productInfo: ProductInfo

Provides information about the IntelliJ Platform product. The information is retrieved from the product-info.json file in the IntelliJ Platform directory.

Link copied to clipboard
@get:Internal
abstract val sandboxConfigDirectory: DirectoryProperty

A configuration directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxConfigFrontendDirectory: DirectoryProperty

A frontend configuration directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxDirectory: DirectoryProperty

The directory containing content read and produced by the running IDE.

Link copied to clipboard
@get:Internal
abstract val sandboxLogDirectory: DirectoryProperty

A log directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxLogFrontendDirectory: DirectoryProperty

A frontend log directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxPluginsDirectory: DirectoryProperty

A plugins directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxPluginsFrontendDirectory: DirectoryProperty

A frontend plugins directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxSystemDirectory: DirectoryProperty

A system directory located within the sandboxDirectory.

Link copied to clipboard
@get:Internal
abstract val sandboxSystemFrontendDirectory: DirectoryProperty

A frontend system directory located within the sandboxDirectory.

Link copied to clipboard
@get:Input
abstract val splitMode: Property<Boolean>

Enables Split Mode when running the IDE.

Link copied to clipboard
@get:Internal
open val splitModeFrontendProperties: Provider<RegularFile>

Path to a properties file which will be used to configure the frontend process if the IDE is started in Split Mode.

Link copied to clipboard
@get:Input
abstract val splitModeTarget: Property<SplitModeAware.SplitModeTarget>

Specifies in which part of the product the developed plugin should be installed.

Functions

Link copied to clipboard

Validates that the resolved IntelliJ Platform is supported by checking against the minimal supported IntelliJ Platform version.

Link copied to clipboard

Validates that the resolved IntelliJ Platform supports Split Mode.