mirror of
https://github.com/JetBrains/intellij-sdk-code-samples.git
synced 2025-07-27 16:57:49 +08:00
tools_intellij_platform_gradle_plugin_recipes.md: Resolve plugin from JetBrains Marketplace in the latest compatible version
This commit is contained in:
parent
a84ea7040b
commit
2487bfcbb8
@ -319,18 +319,20 @@ val IntelliJPlatformDependenciesExtension.pluginRepository by lazy {
|
||||
PluginRepositoryFactory.create("https://plugins.jetbrains.com")
|
||||
}
|
||||
|
||||
fun IntelliJPlatformDependenciesExtension.pluginInLatestCompatibleVersion(vararg pluginId: String) =
|
||||
plugin(provider {
|
||||
val platformType = intellijPlatform.productInfo.productCode
|
||||
val platformVersion = intellijPlatform.productInfo.buildNumber
|
||||
fun IntelliJPlatformDependenciesExtension.pluginsInLatestCompatibleVersion(vararg pluginIds: String) =
|
||||
plugins(provider {
|
||||
pluginIds.map { pluginId ->
|
||||
val platformType = intellijPlatform.productInfo.productCode
|
||||
val platformVersion = intellijPlatform.productInfo.buildNumber
|
||||
|
||||
val plugin = pluginRepository.pluginManager.searchCompatibleUpdates(
|
||||
build = "$platformType-$platformVersion",
|
||||
xmlIds = listOf(pluginId),
|
||||
).firstOrNull()
|
||||
?: throw GradleException("No plugin update with id='$pluginId' compatible with '$platformType-$platformVersion' found in JetBrains Marketplace")
|
||||
val plugin = pluginRepository.pluginManager.searchCompatibleUpdates(
|
||||
build = "$platformType-$platformVersion",
|
||||
xmlIds = listOf(pluginId),
|
||||
).firstOrNull()
|
||||
?: throw GradleException("No plugin update with id='$pluginId' compatible with '$platformType-$platformVersion' found in JetBrains Marketplace")
|
||||
|
||||
"${plugin.pluginXmlId}:${plugin.version}"
|
||||
"${plugin.pluginXmlId}:${plugin.version}"
|
||||
}
|
||||
})
|
||||
|
||||
dependencies {
|
||||
@ -338,7 +340,7 @@ dependencies {
|
||||
|
||||
intellijPlatform {
|
||||
// ...
|
||||
pluginInLatestCompatibleVersion("org.coffeescript")
|
||||
pluginsInLatestCompatibleVersion("org.coffeescript", ...)
|
||||
}
|
||||
}
|
||||
```
|
||||
|
Loading…
x
Reference in New Issue
Block a user