IntelliJPlatformRepositoriesExtension

abstract class IntelliJPlatformRepositoriesExtension @Inject constructor(repositories: RepositoryHandler, providers: ProviderFactory, objects: ObjectFactory, flowScope: FlowScope, flowProviders: FlowProviders, gradle: Gradle, rootProjectDirectory: Path)

This is an extension class for managing IntelliJ Platform repositories in a Gradle build script. It's applied to the RepositoryHandler. Available in both Project scope and Gradle Settings for DependencyResolutionManagement.

It provides methods to add:

  • IntelliJ Platform repositories (for releases, snapshots, and nightly builds)

  • JetBrains Marketplace repository for fetching plugins

  • JetBrains Runtime repository

  • Android Studio and IntelliJ Platform binary release repositories (for IntelliJ Plugin Verifier)

  • Ivy local repository (for correct access to local dependencies)

Parameters

repositories

The Gradle RepositoryHandler to manage repositories.

providers

The Gradle ProviderFactory to create providers.

rootProjectDirectory

The root project directory location.

Constructors

Link copied to clipboard
@Inject
constructor(repositories: RepositoryHandler, providers: ProviderFactory, objects: ObjectFactory, flowScope: FlowScope, flowProviders: FlowProviders, gradle: Gradle, rootProjectDirectory: Path)

Types

Link copied to clipboard

Functions

Link copied to clipboard
fun androidStudioInstallers(action: IvyRepositoryAction = {}): IvyArtifactRepository

Adds a repository for accessing Android Studio binary releases.

Link copied to clipboard
fun customPluginRepository(url: String, type: CustomPluginRepositoryType = CustomPluginRepositoryType.PLUGIN_REPOSITORY, action: IvyRepositoryAction = {}): PluginArtifactRepository
Link copied to clipboard

Applies a set of recommended repositories required for running the most common tasks provided by the IntelliJ Platform Gradle Plugin:

Link copied to clipboard
fun intellijDependencies(action: MavenRepositoryAction = {}): MavenArtifactRepository

Adds a repository for accessing IntelliJ Platform dependencies.

Link copied to clipboard
fun jetbrainsIdeInstallers(action: IvyRepositoryAction = {}): IvyArtifactRepository

Adds a repository for accessing IntelliJ Platform binary releases.

Link copied to clipboard
fun jetbrainsRuntime(action: IvyRepositoryAction = {}): IvyArtifactRepository

Adds a repository for accessing JetBrains Runtime releases.

Link copied to clipboard
fun localPlatformArtifacts(action: IvyRepositoryAction = {}): IvyArtifactRepository

Certain dependencies, such as the IntelliJ Platform and bundled IDE plugins, need extra pre-processing before they can be correctly used by the IntelliJ Platform Gradle Plugin and loaded by Gradle.

Link copied to clipboard
fun marketplace(action: MavenRepositoryAction = {}): MavenArtifactRepository

Adds a repository for accessing plugins hosted on JetBrains Marketplace.

Link copied to clipboard
fun nightly(action: MavenRepositoryAction = {}): MavenArtifactRepository

Adds a repository for accessing IntelliJ Platform nightly releases.

Link copied to clipboard
fun releases(action: MavenRepositoryAction = {}): MavenArtifactRepository

Adds a repository for accessing IntelliJ Platform stable releases.

Link copied to clipboard
fun snapshots(action: MavenRepositoryAction = {}): MavenArtifactRepository

Adds a repository for accessing IntelliJ Platform snapshot releases.