How to use Kotlin Dev repository with Gradle Kotlin DSL
One minute read in Kotlin HighlightsIf you try to use some dev version of kotlin, for example:
// file: build.gradle.kts
plugins {
kotlin("jvm").version("1.3.20-dev-1612")
}
You will get the following exception:
* What went wrong:
Plugin [id: 'org.jetbrains.kotlin.jvm', version: '1.3.20-dev-1612'] was not found in any of the following sources:
- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Plugin Repositories (could not resolve plugin artifact 'org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.3.20-dev-1612')
Searched in the following repositories:
BintrayJCenter
Gradle Central Plugin Repository
In old-fashion buildscript
block you can define repositories
, but with shiny new plugins
block it’s impossible. So you need to edit your settings.gradle.kts
, and add pluginManagement
block in it:
pluginManagement {
repositories {
jcenter()
gradlePluginPortal()
maven { url = uri("https://kotlin.bintray.com/kotlin-dev") }
}
}
Fun fact: Kotlin has own subdomain in bintray: kotlin.bintray.com
And don’t forget edit repositories
block in build.gradle.kts
for artifacts resolving:
repositories {
jcenter()
maven { url = uri("https://kotlin.bintray.com/kotlin-dev") }
}
Actually, you can do a lot of thing with pluginManagement
, like changing versions, or specify artifact for requested plugin id. Consult gradle documentation (5.0-rc-2) for more details.
Have a nice Kotlin!