BuildSearchableOptionsTask

@CacheableTask
abstract class BuildSearchableOptionsTask : JavaExec, RunnableIdeAware

Builds the index of UI components (searchable options) for the plugin. This task runs a headless IDE instance to collect all the available options provided by the plugin's Settings.

If the plugin doesn't implement custom settings, it is recommended to disable this task via IntelliJPlatformExtension.buildSearchableOptions flag. The task is also skipped automatically when no Configurable extension points are found in the main plugin descriptor or plugin module descriptors. Use GradleProperties.ForceBuildSearchableOptions to bypass this optimization.

In the case of running the task for the plugin that has IntelliJPlatformExtension.PluginConfiguration.ProductDescriptor defined, a warning will be logged regarding potential issues with running headless IDE for paid plugins. It is possible to mute this warning with the GradleProperties.PaidPluginSearchableOptionsWarning Gradle property.

Constructors

Link copied to clipboard
constructor()

Types

Link copied to clipboard
object Companion : Registrable

Properties

Link copied to clipboard
open var actions: List<Action<in Task?>?>?
Link copied to clipboard
open override var allJvmArgs: List<String?>?
Link copied to clipboard
open val ant: AntBuilder?
Link copied to clipboard
open var args: List<String?>?
Link copied to clipboard
open val argumentProviders: List<CommandLineArgumentProvider?>?
Link copied to clipboard
@get:Internal
open val asDynamicObject: DynamicObject
Link copied to clipboard
@get:Internal
abstract val autoReload: Property<Boolean>

Enables auto-reload of dynamic plugins. Dynamic plugin will be reloaded automatically when its content is modified.

Link copied to clipboard
open override var bootstrapClasspath: FileCollection?
Link copied to clipboard
open var classpath: FileCollection?
Link copied to clipboard
@get:Internal
open val commandLine: List<String?>?
Link copied to clipboard
@get:Internal
open val conventionMapping: ConventionMapping?
Link copied to clipboard
@get:Internal
@get:Optional
abstract val coroutinesJavaAgentFile: RegularFileProperty

The path to the coroutines Java Agent file.

Link copied to clipboard
open override var debug: Boolean
Link copied to clipboard
open override val debugOptions: JavaDebugOptions?
Link copied to clipboard
open override var defaultCharacterEncoding: @Nullable String?
Link copied to clipboard
open val dependsOn: Set<Any?>?
Link copied to clipboard
open var description: @Nullable String?
Link copied to clipboard
open val destroyables: TaskDestroyables?
Link copied to clipboard
open var didWork: Boolean
Link copied to clipboard
open override var enableAssertions: Boolean
Link copied to clipboard
open var enabled: Boolean
Link copied to clipboard
@get:Internal
open override var environment: Map<String?, Any?>?
Link copied to clipboard
@get:Internal
open var errorOutput: OutputStream?
Link copied to clipboard
@get:Internal(value = "covered by getJavaVersion")
open override var executable: @Nullable String?
Link copied to clipboard
@get:Internal
open val executionResult: Provider<ExecResult?>?
Link copied to clipboard
open val extensions: ExtensionContainer?
Link copied to clipboard
open val finalizedBy: TaskDependency?
Link copied to clipboard
open var group: @Nullable String?
Link copied to clipboard
open val identityPath: Path?
Link copied to clipboard
Link copied to clipboard
open val inputs: TaskInputsInternal?
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.

@get:InputFiles
@get:PathSensitive(value = PathSensitivity.RELATIVE)
abstract val intelliJPlatformTestRuntimeFixClasspathConfiguration: ConfigurableFileCollection

Holds the Configurations.INTELLIJ_PLATFORM_TEST_RUNTIME_FIX_CLASSPATH configuration with the custom IntelliJ Platform core dependency required for running tests. It should not be directly accessed.

Link copied to clipboard
@get:Internal
open var isEnabled: Boolean
Link copied to clipboard
Link copied to clipboard
@get:Input
open var isIgnoreExitValue: Boolean
Link copied to clipboard
abstract val javaLauncher: Property<JavaLauncher?>?
Link copied to clipboard
@get:Internal(value = "covered by getJavaLauncher().getMetadata().getLanguageVersion()")
open val javaVersion: JavaVersion?
Link copied to clipboard
@get:Internal
abstract val jetbrainsRuntimeConfiguration: ConfigurableFileCollection

Holds the Configurations.JETBRAINS_RUNTIME configuration with the JetBrains Runtime dependency added. It should not be directly accessed.

Link copied to clipboard
open override var jvmArgs: List<String?>?
Link copied to clipboard
open override val jvmArgumentProviders: List<CommandLineArgumentProvider?>?
Link copied to clipboard
open val jvmArguments: ListProperty<String?>?
Link copied to clipboard
@get:Internal
open val lifecycleDependencies: TaskDependencyInternal?
Link copied to clipboard
open val localState: TaskLocalState?
Link copied to clipboard
open val logger: Logger?
Link copied to clipboard
open val logging: LoggingManager?
Link copied to clipboard
abstract val mainClass: Property<String?>?
Link copied to clipboard
abstract val mainModule: Property<String?>?
Link copied to clipboard
open override var maxHeapSize: @Nullable String?
Link copied to clipboard
open override var minHeapSize: @Nullable String?
Link copied to clipboard
open val modularity: ModularitySpec?
Link copied to clipboard
@get:Internal
abstract val module: Property<Boolean>

Indicates if the current project represents an IntelliJ Platform plugin module.

Link copied to clipboard
open val mustRunAfter: TaskDependency?
Link copied to clipboard
open val name: String?
Link copied to clipboard
open val onlyIf: Spec<in TaskInternal?>?
Link copied to clipboard
@get:OutputDirectory
abstract val outputDirectory: DirectoryProperty

Specifies the directory where searchable options will be generated.

Link copied to clipboard
open val outputs: TaskOutputsInternal?
Link copied to clipboard
open val path: String?
Link copied to clipboard
@get:Internal
open val platformPath: Path

Provides access to the IntelliJ Platform dependency artifact path.

Link copied to clipboard
@get:InputFile
@get:PathSensitive(value = PathSensitivity.RELATIVE)
@get:Optional
abstract val pluginXml: RegularFileProperty

Holds the path to the patched plugin.xml file.

Link copied to clipboard
@get:Internal
abstract val pluginXmlService: Property<PluginXmlService>
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
open val project: Project?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open val requiredServices: TaskRequiredServices?
Link copied to clipboard
@get:Internal
abstract val runtimeArchitecture: Property<String>

An architecture of the Java Runtime currently used for running Gradle.

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

Java Runtime parent directory.

Link copied to clipboard
@get:Internal
abstract val runtimeLauncher: Property<JavaLauncher>

A custom JavaLauncher instance configured with the resolved runtimeDirectory.

Link copied to clipboard
@get:Internal
abstract val runtimeMetadata: MapProperty<String, String>

Metadata object of the Java Runtime currently used for running Gradle.

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 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 sandboxPluginsDirectory: DirectoryProperty

A 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
open val sharedResources: List<ResourceLock?>?
Link copied to clipboard
open val shouldRunAfter: TaskDependency?
Link copied to clipboard
@get:Internal
abstract val showPaidPluginWarning: Property<Boolean>

Emits a warning when the task is executed by a paid plugin. Can be disabled with the GradleProperties.PaidPluginSearchableOptionsWarning Gradle property.

Link copied to clipboard
@get:Internal
open var standardInput: InputStream?
Link copied to clipboard
@get:Internal
open var standardOutput: OutputStream?
Link copied to clipboard
open val standardOutputCapture: StandardOutputCapture?
Link copied to clipboard
open val state: TaskStateInternal?
Link copied to clipboard
open override var systemProperties: Map<String?, @Nullable Any?>?
Link copied to clipboard
open val taskActions: List<InputChangesAwareTaskAction?>?
Link copied to clipboard
open val taskDependencies: TaskDependencyInternal?
Link copied to clipboard
open val taskIdentity: TaskIdentity<*>?
Link copied to clipboard
open val temporaryDir: File?
Link copied to clipboard
open val temporaryDirFactory: Factory<File?>?
Link copied to clipboard
@get:Internal
abstract val testSandbox: Property<Boolean>

Defines if the current sandbox is related to testing.

Link copied to clipboard
open val timeout: Property<Duration?>?
Link copied to clipboard
@get:Internal
open override var workingDir: File?

Functions

Link copied to clipboard
open fun acceptServiceReferences(serviceReferences: Set<ServiceReferenceSpec?>?)
Link copied to clipboard
open fun appendParallelSafeAction(action: Action<in Task?>?)
Link copied to clipboard
open fun Task.applyFrontendSandboxFrom(sandboxProducerTaskProvider: TaskProvider<PrepareSandboxTask>)
Link copied to clipboard
open fun Task.applySandboxFrom(sandboxProducerTaskProvider: TaskProvider<PrepareSandboxTask>)
Link copied to clipboard
open fun args(args: Iterable<*>?): JavaExecSpec?
open fun args(vararg args: Any?): JavaExec?
Link copied to clipboard
open fun bootstrapClasspath(vararg classpath: @Nullable Any?): JavaExec?
Link copied to clipboard
open fun classpath(vararg paths: @Nullable Any?): JavaExec?
Link copied to clipboard
open operator fun compareTo(otherTask: Task?): Int
Link copied to clipboard
open fun configure(closure: Closure<*>?): Task?
Link copied to clipboard
open fun conventionMapping(property: String?, mapping: Closure<*>?): Task?
open fun conventionMapping(property: String?, mapping: Callable<*>?): Task?
Link copied to clipboard
open fun copyTo(options: JavaForkOptions?): JavaExec?
open fun copyTo(target: ProcessForkOptions?): JavaExec?
Link copied to clipboard
open fun debugOptions(action: Action<JavaDebugOptions?>?)
Link copied to clipboard
open fun dependsOn(vararg paths: Any?): Task?
Link copied to clipboard
open fun doFirst(action: Closure<*>?): Task?
open fun doFirst(action: Action<in Task?>?): Task?
open fun doFirst(actionName: String?, action: Action<in Task?>?): Task?
Link copied to clipboard
open fun doLast(action: Closure<*>?): Task?
open fun doLast(action: Action<in Task?>?): Task?
open fun doLast(actionName: String?, action: Action<in Task?>?): Task?
Link copied to clipboard
open fun doNotTrackState(reasonNotToTrackState: String?)
Link copied to clipboard
open fun doNotTrackStateIf(reason: String?, spec: Spec<in TaskInternal?>?)
Link copied to clipboard
open fun environment(environmentVariables: Map<String?, *>?): JavaExec?
open fun environment(name: String?, value: Any?): JavaExec?
Link copied to clipboard
open override fun exec()

Executes the task, configures and runs the IDE.

Link copied to clipboard
open fun executable(executable: Any?): JavaExec?
Link copied to clipboard
open fun finalizedBy(vararg paths: Any?): Task?
Link copied to clipboard
open fun getAllJvmArgs(): List<String?>?
Link copied to clipboard
open fun getBootstrapClasspath(): FileCollection?
Link copied to clipboard
open fun getDebug(): Boolean
Link copied to clipboard
open fun getDebugOptions(): JavaDebugOptions?
Link copied to clipboard
open fun getDefaultCharacterEncoding(): @Nullable String?
Link copied to clipboard
Link copied to clipboard
@Internal
open fun getEnvironment(): Map<String?, Any?>?
Link copied to clipboard
@Internal(value = "covered by getJavaVersion")
open fun getExecutable(): @Nullable String?
Link copied to clipboard
open fun getJvmArgs(): List<String?>?
Link copied to clipboard
open fun getJvmArgumentProviders(): List<CommandLineArgumentProvider?>?
Link copied to clipboard
open fun getMaxHeapSize(): @Nullable String?
Link copied to clipboard
open fun getMinHeapSize(): @Nullable String?
Link copied to clipboard
open fun getSystemProperties(): Map<String?, @Nullable Any?>?
Link copied to clipboard
@Internal
open fun getWorkingDir(): File?
Link copied to clipboard
open fun hasProperty(propertyName: String?): Boolean
Link copied to clipboard
Link copied to clipboard
open fun jvmArgs(arguments: Iterable<*>?): JavaExec?
open fun jvmArgs(vararg arguments: Any?): JavaExec?
Link copied to clipboard
open fun mustRunAfter(vararg paths: Any?): Task?
Link copied to clipboard
open fun onlyIf(onlyIfClosure: Closure<*>?)
open fun onlyIf(spec: Spec<in Task?>?)
open fun onlyIf(onlyIfReason: String?, spec: Spec<in Task?>?)
Link copied to clipboard
open fun prependParallelSafeAction(action: Action<in Task?>?)
Link copied to clipboard
open fun property(propertyName: String?): Any?
Link copied to clipboard
open fun restoreOnlyIf(onlyIf: Spec<in TaskInternal?>?)
Link copied to clipboard
open fun restoreTaskActions(taskActions: List<InputChangesAwareTaskAction?>?)
Link copied to clipboard
open fun setAllJvmArgs(arguments: Iterable<*>?)
open fun setAllJvmArgs(arguments: List<String?>?)
Link copied to clipboard
open fun setArgsString(args: String?): JavaExec?
Link copied to clipboard
open fun setBootstrapClasspath(classpath: FileCollection?)
Link copied to clipboard
open fun setDebug(enabled: Boolean)
Link copied to clipboard
open fun setDefaultCharacterEncoding(defaultCharacterEncoding: @Nullable String?)
Link copied to clipboard
open fun setDependsOn(dependsOn: Iterable<*>?)
Link copied to clipboard
open fun setEnableAssertions(enabled: Boolean)
Link copied to clipboard
open fun setEnvironment(environmentVariables: Map<String?, *>?)
Link copied to clipboard
open fun setExecutable(executable: Any?)
open fun setExecutable(executable: String?)
Link copied to clipboard
open fun setFinalizedBy(finalizedByTasks: Iterable<*>?)
Link copied to clipboard
open fun setJvmArgs(arguments: Iterable<*>?)
open fun setJvmArgs(arguments: List<String?>?)
Link copied to clipboard
open fun setMaxHeapSize(heapSize: @Nullable String?)
Link copied to clipboard
open fun setMinHeapSize(heapSize: @Nullable String?)
Link copied to clipboard
open fun setMustRunAfter(mustRunAfterTasks: Iterable<*>?)
Link copied to clipboard
open fun setOnlyIf(onlyIfClosure: Closure<*>?)
open fun setOnlyIf(spec: Spec<in Task?>?)
open fun setOnlyIf(onlyIfReason: String?, spec: Spec<in Task?>?)
Link copied to clipboard
open fun setProperty(name: String?, value: Any?)
Link copied to clipboard
open fun setShouldRunAfter(shouldRunAfterTasks: Iterable<*>?)
Link copied to clipboard
open fun setSystemProperties(properties: Map<String?, out @Nullable Any?>?)
Link copied to clipboard
open fun setWorkingDir(dir: File?)
open fun setWorkingDir(dir: Any?)
Link copied to clipboard
open fun shouldRunAfter(vararg paths: Any?): TaskDependency?
Link copied to clipboard
open fun systemProperties(properties: Map<String?, out @Nullable Any?>?): JavaExec?
Link copied to clipboard
open fun systemProperty(name: String?, value: @Nullable Any?): JavaExec?
Link copied to clipboard
open fun usesService(service: Provider<out BuildService<*>?>?)
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
open fun workingDir(dir: Any?): JavaExec?