PatchPluginXmlTask

@CacheableTask
abstract class PatchPluginXmlTask : DefaultTask, IntelliJPlatformVersionAware

Patches plugin.xml files with values provided with the IntelliJPlatformExtension.PluginConfiguration extension.

See also

Constructors

Link copied to clipboard
constructor()

Types

Link copied to clipboard
object Companion : Registrable

Properties

Link copied to clipboard
@get:Input
@get:Optional
abstract val changeNotes: Property<String>

A short summary of new features, bugfixes, and changes provided in this plugin version. Change notes are displayed on the JetBrains Marketplace plugin page and in the Plugins settings dialog. Simple HTML elements, like text formatting, paragraphs, lists, etc., are allowed.

Link copied to clipboard
@get:Internal
var enabled: Boolean
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@get:InputFile
@get:SkipWhenEmpty
@get:PathSensitive(value = PathSensitivity.RELATIVE)
abstract val inputFile: RegularFileProperty

Specifies the input plugin.xml` file, which by default is picked from the main resource location.

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:OutputFile
abstract val outputFile: RegularFileProperty

Specifies the patched output plugin.xml file, which by default is written to a temporary task-specific directory within the ProjectLayout.getBuildDirectory directory.

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

Provides access to the IntelliJ Platform dependency artifact path.

Link copied to clipboard
@get:Input
@get:Optional
abstract val pluginDescription: Property<String>

Specifies the plugin description displayed in the Plugins settings dialog and on the JetBrains Marketplace plugin page. Simple HTML elements, like text formatting, paragraphs, lists, etc., are allowed.

Link copied to clipboard
@get:Input
@get:Optional
abstract val pluginId: Property<String>

Specifies a unique plugin identifier, which should be a fully qualified name similar to Java packages and must not collide with the ID of existing plugins. The ID is a technical value used to identify the plugin in the IDE and JetBrains Marketplace.

Link copied to clipboard
@get:Input
@get:Optional
abstract val pluginName: Property<String>

Specifies the user-visible plugin name. It should use Title Case. The provided value will be assigned to the <name> element.

Link copied to clipboard
@get:Input
@get:Optional
abstract val pluginVersion: Property<String>

Specifies the plugin version displayed in the Plugins settings dialog and on the JetBrains Marketplace plugin page. Plugins uploaded to JetBrains Marketplace must follow semantic versioning. The provided value will be assigned to the <version> element.

Link copied to clipboard
@get:Input
@get:Optional
abstract val productDescriptorCode: Property<String>

The plugin product code used in the JetBrains Sales System. The code must be agreed with JetBrains in advance and follow the requirements. The provided value will be assigned to the <product-descriptor code=""> element attribute.

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

Specifies the boolean value determining whether the plugin is an EAP release. The provided value will be assigned to the <product-descriptor eap=""> element attribute.

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

Specifies the boolean value determining whether the plugin is a Freemium plugin. The provided value will be assigned to the <product-descriptor optional=""> element attribute.

Link copied to clipboard
@get:Input
@get:Optional
abstract val productDescriptorReleaseDate: Property<String>

Date of the major version release in the YYYYMMDD format. The provided value will be assigned to the <product-descriptor release-date=""> element attribute.

Link copied to clipboard
@get:Input
@get:Optional
abstract val productDescriptorReleaseVersion: Property<String>

Specifies the major version of the plugin in a special number format used for paid plugins on JetBrains Marketplace. The provided value will be assigned to the <product-descriptor release-version=""> element attribute.

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:Input
@get:Optional
abstract val sinceBuild: Property<String>

Specifies the lowest IDE version compatible with the plugin. The provided value will be assigned to the <idea-version since-build="..."/> element attribute.

Link copied to clipboard
val state: TaskStateInternal
Link copied to clipboard
val timeout: Property<Duration>
Link copied to clipboard
@get:Input
@get:Optional
abstract val untilBuild: Property<String>

The highest IDE version compatible with the plugin. The until-build attribute can be unset by setting provider { null } as a value, and note that only passing null will make Gradle use the default value instead. However, if until-build is undefined, compatibility with all the IDEs since the version specified by the since-build is assumed, which can cause incompatibility errors in future builds.

Link copied to clipboard
@get:Input
@get:Optional
abstract val vendorEmail: Property<String>

Specifies the vendor's email address. The provided value will be assigned to the <vendor email=""> element attribute.

Link copied to clipboard
@get:Input
@get:Optional
abstract val vendorName: Property<String>

Specifies the vendor name or organization ID (if created) in the Plugins settings dialog and on the JetBrains Marketplace plugin page. The provided value will be assigned to the <vendor> element.

Link copied to clipboard
@get:Input
@get:Optional
abstract val vendorUrl: Property<String>

Specifies the link to the vendor's homepage. The provided value will be assigned to the <vendor url=""> element attribute.

Functions

Link copied to clipboard
open override fun acceptServiceReferences(serviceReferences: MutableSet<ServiceReferenceSpec>)
Link copied to clipboard
open override fun appendParallelSafeAction(action: Action<in Task>)
Link copied to clipboard
open operator override fun compareTo(other: Task): Int
Link copied to clipboard
open override fun configure(closure: Closure<Any>): Task
Link copied to clipboard
open override fun dependsOn(vararg paths: Any): Task
Link copied to clipboard
open override fun doFirst(action: Closure<Any>): Task
open override fun doFirst(action: Action<in Task>): Task
open override fun doFirst(actionName: String, action: Action<in Task>): Task
Link copied to clipboard
open override fun doLast(action: Closure<Any>): Task
open override fun doLast(action: Action<in Task>): Task
open override fun doLast(actionName: String, action: Action<in Task>): Task
Link copied to clipboard
open override fun doNotTrackState(reasonNotToTrackState: String)
Link copied to clipboard
open override fun finalizedBy(vararg paths: Any): Task
Link copied to clipboard
open override fun getActions(): MutableList<Action<in Task>>
Link copied to clipboard
open override fun getAnt(): AntBuilder
Link copied to clipboard
@Internal
open override fun getAsDynamicObject(): DynamicObject
Link copied to clipboard
@Internal
open override fun getConvention(): Convention
Link copied to clipboard
open override fun getDependsOn(): MutableSet<Any>
Link copied to clipboard
open override fun getDescription(): String?
Link copied to clipboard
open override fun getDestroyables(): TaskDestroyables
Link copied to clipboard
open override fun getDidWork(): Boolean
Link copied to clipboard
open override fun getExtensions(): ExtensionContainer
Link copied to clipboard
open override fun getFinalizedBy(): TaskDependency
Link copied to clipboard
open override fun getGroup(): String?
Link copied to clipboard
open override fun getIdentityPath(): Path
Link copied to clipboard
open override fun getInputs(): TaskInputsInternal
Link copied to clipboard
@Internal
open override fun getLifecycleDependencies(): TaskDependencyInternal
Link copied to clipboard
open override fun getLocalState(): TaskLocalState
Link copied to clipboard
open override fun getLogger(): Logger
Link copied to clipboard
open override fun getLogging(): LoggingManager
Link copied to clipboard
open override fun getMustRunAfter(): TaskDependency
Link copied to clipboard
open override fun getName(): String
Link copied to clipboard
open override fun getOnlyIf(): Spec<in TaskInternal>
Link copied to clipboard
open override fun getOutputs(): TaskOutputsInternal
Link copied to clipboard
open override fun getPath(): String
Link copied to clipboard
open override fun getProject(): Project
Link copied to clipboard
Link copied to clipboard
open override fun getRequiredServices(): TaskRequiredServices
Link copied to clipboard
open override fun getSharedResources(): MutableList<ResourceLock>
Link copied to clipboard
open override fun getShouldRunAfter(): TaskDependency
Link copied to clipboard
open override fun getStandardOutputCapture(): StandardOutputCapture
Link copied to clipboard
open override fun getTaskActions(): MutableList<InputChangesAwareTaskAction>
Link copied to clipboard
open override fun getTaskDependencies(): TaskDependencyInternal
Link copied to clipboard
open override fun getTaskIdentity(): TaskIdentity<*>
Link copied to clipboard
open override fun getTemporaryDir(): File
Link copied to clipboard
open override fun getTemporaryDirFactory(): Factory<File>
Link copied to clipboard
open override fun hasProperty(propertyName: String): Boolean
Link copied to clipboard
open override fun hasTaskActions(): Boolean
Link copied to clipboard
Link copied to clipboard
open override fun mustRunAfter(vararg paths: Any): Task
Link copied to clipboard
open override fun notCompatibleWithConfigurationCache(reason: String)
Link copied to clipboard
open override fun onlyIf(onlyIfClosure: Closure<Any>)
open override fun onlyIf(spec: Spec<in Task>)
open override fun onlyIf(onlyIfReason: String, spec: Spec<in Task>)
Link copied to clipboard
Link copied to clipboard
open override fun prependParallelSafeAction(action: Action<in Task>)
Link copied to clipboard
open override fun property(propertyName: String): Any?
Link copied to clipboard
open override fun setActions(replacements: MutableList<Action<in Task>>)
Link copied to clipboard
open override fun setDependsOn(dependsOn: MutableIterable<*>)
Link copied to clipboard
open override fun setDescription(description: String?)
Link copied to clipboard
open override fun setDidWork(didWork: Boolean)
Link copied to clipboard
open override fun setFinalizedBy(finalizedByTasks: MutableIterable<*>)
Link copied to clipboard
open override fun setGroup(group: String?)
Link copied to clipboard
open override fun setMustRunAfter(mustRunAfterTasks: MutableIterable<*>)
Link copied to clipboard
open override fun setOnlyIf(onlyIfClosure: Closure<Any>)
open override fun setOnlyIf(spec: Spec<in Task>)
open override fun setOnlyIf(onlyIfReason: String, spec: Spec<in Task>)
Link copied to clipboard
open override fun setProperty(name: String, value: Any)
Link copied to clipboard
open override fun setShouldRunAfter(shouldRunAfterTasks: MutableIterable<*>)
Link copied to clipboard
open override fun shouldRunAfter(vararg paths: Any): TaskDependency
Link copied to clipboard
open override 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.