Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup + move some common functionality from platform build scripts into this plugin #161

Open
wants to merge 33 commits into
base: v1.x
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
92eaf17
upgrade Gradle to 8.10.2
alexanderpann Sep 27, 2024
8821c8f
update Kotlin to 1.9.24 and API version to 1.8
alexanderpann Sep 27, 2024
2a6ba42
update the Kotlin DSL to 4.5.0
alexanderpann Sep 27, 2024
143fbe4
update binary-compatibility-validator to 0.14.0
alexanderpann Sep 27, 2024
c1df9c2
set de.itemis.mps.build-backends:launcher to 2.5+
alexanderpann Sep 27, 2024
d5e9faa
update net.swiftzer.semver:semver to 2.0.0
alexanderpann Sep 27, 2024
d3c6d1c
update org.jetbrains.kotlinx.binary-compatibility-validator to 0.16.3
alexanderpann Sep 27, 2024
46e8ad3
add an extension for setting the CI flag
alexanderpann Sep 28, 2024
90f0769
add a class for representing an MPS version
alexanderpann Sep 28, 2024
b8fcba5
add an extension for determining the JDK
alexanderpann Sep 28, 2024
2afc0d6
add an extension with links for the mbeddr github and itemis nexus re…
alexanderpann Sep 28, 2024
1b8afc3
create the mps, languageLibs and antLib configuration automatically
alexanderpann Sep 28, 2024
444eb9a
set MPS home dir and create the resolveMPS task
alexanderpann Sep 28, 2024
8100dbb
apply plugin base and create a cleanMPS task
alexanderpann Sep 28, 2024
e2a59d5
provide an extension for the GitHub user and token
alexanderpann Sep 28, 2024
b003355
provide a method ci.buildNumber()
alexanderpann Sep 28, 2024
6abf67e
provide a method ci.registerDependencyRepositories()
alexanderpann Sep 28, 2024
c71b49a
provide MPSVersion#toMavenSnapshot
alexanderpann Sep 28, 2024
7f4a48e
improve GitBasedVersioning
alexanderpann Sep 28, 2024
96f8cb5
create a directories extension
alexanderpann Sep 28, 2024
9cff748
hardcode MPS versions
alexanderpann Sep 28, 2024
ece5bb3
enable the option to make the downloaded JBR the default java executable
alexanderpann Sep 28, 2024
420c222
convert a few classes to Kotlin
alexanderpann Sep 28, 2024
ada92cd
update the base version
alexanderpann Sep 28, 2024
f8b8ff7
extract some more version strings to gradle.properties
alexanderpann Sep 28, 2024
212d7e1
fix a NullPointerException
alexanderpann Sep 28, 2024
9224b79
rename some configurations and tasks to avoid redefinitions
alexanderpann Sep 28, 2024
4f9f139
use SemVersion as the internal structure for MPSVersion
alexanderpann Sep 28, 2024
44e99f1
fix the GetMpsInBrowser task
alexanderpann Sep 28, 2024
e4d868c
runmigrations: use the MPSVersion wrapper class
alexanderpann Sep 29, 2024
fb3b5d4
update documentation/changelog + fix a wrong task name
alexanderpann Sep 29, 2024
f1d5f21
fix warnings
alexanderpann Sep 29, 2024
a78e9e9
fix some small issues
alexanderpann Sep 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,27 @@
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## 1.29.0

### Changed

- Upgraded to Gradle 8.10.2 and Kotlin to 1.9.24.

### Added

- A few new helper functions are now available through extensions when applying `de.itemis.mps.gradle.common`:
- `ci` (determineCI(), isCI(), buildNumber(), registerDependencyRepositories())
- `jdk` (determine(JavaVersion))
- `itemis` (mbeddrGitHub(), itemisNexus())
- `githubAuth` (user, token)
- `directories` (artifactsDir(), scriptFile(String), jnLibraryPath())
- `de.itemis.mps.gradle.common` creates configurations for MPS (`common_mps`), language dependencies (`common_languageLibs`) and the ant lib (common_antLib) automatically. Tasks `commonCleanMps` and `commonResolveMps` are also created when you apply `de.itemis.mps.gradle.common`.
- The plugin `downloadJbr` has a new flag `defaultJavaExecutable` to set the downloaded JBR as the default Java executable.

### Fixed

- The `GetMpsInBrowser` task works again for all platforms including Mac Apple Silicon.

## 1.28.0

### Added
Expand Down
168 changes: 110 additions & 58 deletions api/mps-gradle-plugin.api
Original file line number Diff line number Diff line change
Expand Up @@ -30,31 +30,32 @@ public class de/itemis/mps/gradle/BuildLanguages : de/itemis/mps/gradle/RunAntSc
public fun <init> ()V
}

public class de/itemis/mps/gradle/BundleMacosJdk : org/gradle/api/DefaultTask, groovy/lang/GroovyObject {
public static synthetic field __$stMC Z
protected synthetic fun $getStaticMetaClass ()Lgroovy/lang/MetaClass;
public class de/itemis/mps/gradle/BundleMacosJdk : org/gradle/api/DefaultTask {
public field jdk Ljava/io/File;
public field outputFile Ljava/io/File;
public field rcpArtifact Ljava/io/File;
public fun <init> ()V
public fun build ()Ljava/lang/Object;
public fun getJdk ()Ljava/io/File;
public fun getJdkDirname ()Ljava/lang/String;
public fun getMetaClass ()Lgroovy/lang/MetaClass;
public fun getOutputFile ()Ljava/io/File;
public fun getRcpArtifact ()Ljava/io/File;
public fun setJdk (Ljava/lang/Object;)Ljava/lang/Object;
public fun setJdkDependency (Ljava/lang/Object;)Ljava/lang/Object;
public fun setJdkDirname (Ljava/lang/String;)Ljava/lang/Object;
public fun setMetaClass (Lgroovy/lang/MetaClass;)V
public fun setOutputFile (Ljava/lang/Object;)Ljava/lang/Object;
public fun setRcpArtifact (Ljava/lang/Object;)Ljava/lang/Object;
public final fun build ()V
public final fun getJdk ()Ljava/io/File;
public final fun getJdkDirname ()Ljava/lang/String;
public final fun getOutputFile ()Ljava/io/File;
public final fun getRcpArtifact ()Ljava/io/File;
public final fun setJdk (Ljava/io/File;)V
public final fun setJdkDependency (Ljava/lang/Object;)V
public final fun setJdkDirname (Ljava/lang/String;)V
public final fun setOutputFile (Ljava/io/File;)V
public final fun setOutputFile (Ljava/lang/Object;)V
public final fun setRcpArtifact (Ljava/io/File;)V
}

public final class de/itemis/mps/gradle/BundledScripts {
public static final field Companion Lde/itemis/mps/gradle/BundledScripts$Companion;
public fun <init> ()V
public static final fun extractScriptsToDir (Ljava/io/File;[Ljava/lang/String;)V
}

public class de/itemis/mps/gradle/BundledScripts : groovy/lang/GroovyObject {
public static synthetic field __$stMC Z
protected synthetic fun $getStaticMetaClass ()Lgroovy/lang/MetaClass;
public fun <init> ()V
public static fun extractScriptsToDir (Ljava/io/File;[Ljava/lang/String;)V
public fun getMetaClass ()Lgroovy/lang/MetaClass;
public fun setMetaClass (Lgroovy/lang/MetaClass;)V
public final class de/itemis/mps/gradle/BundledScripts$Companion {
public final fun extractScriptsToDir (Ljava/io/File;[Ljava/lang/String;)V
}

public final class de/itemis/mps/gradle/CommonKt {
Expand All @@ -72,28 +73,44 @@ public final class de/itemis/mps/gradle/CommonPlugin : org/gradle/api/Plugin {
public fun apply (Lorg/gradle/api/Project;)V
}

public class de/itemis/mps/gradle/CreateDmg : org/gradle/api/DefaultTask, groovy/lang/GroovyObject {
public static synthetic field __$stMC Z
protected synthetic fun $getStaticMetaClass ()Lgroovy/lang/MetaClass;
public abstract class de/itemis/mps/gradle/Common_gradle$CI {
public fun <init> (Lorg/gradle/api/Project;)V
public final fun buildNumber ()I
public final fun determineCI ()V
public final fun get_project ()Lorg/gradle/api/Project;
public final fun isCI ()Ljava/lang/Object;
public final fun registerDependencyRepositories (Ljava/util/ArrayList;)V
}

public abstract class de/itemis/mps/gradle/Common_gradle$Directories {
public fun <init> (Lorg/gradle/api/Project;)V
public final fun artifactsDir ()Ljava/io/File;
public final fun get_project ()Lorg/gradle/api/Project;
public final fun jnLibraryPath ()Ljava/io/File;
public final fun scriptFile (Ljava/lang/String;)Ljava/io/File;
}

public abstract class de/itemis/mps/gradle/Common_gradle$GitHubAuth {
public fun <init> (Lorg/gradle/api/Project;)V
public final fun getToken ()Ljava/lang/String;
public final fun getUser ()Ljava/lang/String;
}

public abstract class de/itemis/mps/gradle/Common_gradle$Itemis {
public fun <init> ()V
public fun build ()Ljava/lang/Object;
public fun getBackgroundImage ()Ljava/io/File;
public fun getDmgFile ()Ljava/io/File;
public fun getJdk ()Ljava/io/File;
public fun getMetaClass ()Lgroovy/lang/MetaClass;
public fun getRcpArtifact ()Ljava/io/File;
public fun getSignIdentity ()Ljava/lang/String;
public fun getSignKeyChain ()Ljava/io/File;
public fun getSignKeyChainPassword ()Ljava/lang/String;
public fun setBackgroundImage (Ljava/lang/Object;)Ljava/lang/Object;
public fun setDmgFile (Ljava/lang/Object;)Ljava/lang/Object;
public fun setJdk (Ljava/lang/Object;)Ljava/lang/Object;
public fun setJdkDependency (Ljava/lang/Object;)Ljava/lang/Object;
public fun setMetaClass (Lgroovy/lang/MetaClass;)V
public fun setRcpArtifact (Ljava/lang/Object;)Ljava/lang/Object;
public fun setSignIdentity (Ljava/lang/String;)V
public fun setSignKeyChain (Ljava/lang/Object;)Ljava/lang/Object;
public fun setSignKeyChainPassword (Ljava/lang/String;)V
public final fun itemisNexus ()Ljava/lang/String;
public final fun mbeddrGitHub ()Ljava/lang/String;
}

public abstract class de/itemis/mps/gradle/Common_gradle$JDK {
public fun <init> (Lorg/gradle/api/Project;)V
public final fun determine (Lorg/gradle/api/JavaVersion;)V
public final fun get_project ()Lorg/gradle/api/Project;
}

public final class de/itemis/mps/gradle/Common_gradle$inlined$sam$i$org_gradle_api_Action$0 : org/gradle/api/Action {
public fun <init> (Lkotlin/jvm/functions/Function1;)V
public final synthetic fun execute (Ljava/lang/Object;)V
}

public final class de/itemis/mps/gradle/EnvironmentKind : java/lang/Enum {
Expand All @@ -118,15 +135,23 @@ public class de/itemis/mps/gradle/GenerateLibrariesXml : org/gradle/api/DefaultT
public fun setOverrides (Ljava/lang/Object;)V
}

public class de/itemis/mps/gradle/GetMpsInBrowser : org/gradle/api/DefaultTask, groovy/lang/GroovyObject {
public static synthetic field __$stMC Z
protected synthetic fun $getStaticMetaClass ()Lgroovy/lang/MetaClass;
public class de/itemis/mps/gradle/GetMpsInBrowser : org/gradle/api/DefaultTask {
public fun <init> ()V
public fun build ()Ljava/lang/Object;
public fun getMetaClass ()Lgroovy/lang/MetaClass;
public fun getVersion ()Ljava/lang/String;
public fun setMetaClass (Lgroovy/lang/MetaClass;)V
public fun setVersion (Ljava/lang/String;)Ljava/lang/Object;
public final fun build ()V
public final fun getVersion ()Ljava/lang/String;
public final fun setVersion (Ljava/lang/String;)V
}

public final class de/itemis/mps/gradle/MPSVersion {
public static final field Companion Lde/itemis/mps/gradle/MPSVersion$Companion;
public synthetic fun <init> (Lnet/swiftzer/semver/SemVer;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun getVersion ()Lnet/swiftzer/semver/SemVer;
public final fun toMavenSnapshot ()Ljava/lang/String;
public fun toString ()Ljava/lang/String;
}

public final class de/itemis/mps/gradle/MPSVersion$Companion {
public final fun parse (Ljava/lang/String;)Lde/itemis/mps/gradle/MPSVersion;
}

public final class de/itemis/mps/gradle/Macro {
Expand Down Expand Up @@ -159,14 +184,10 @@ public final class de/itemis/mps/gradle/Plugin {
public fun toString ()Ljava/lang/String;
}

public class de/itemis/mps/gradle/Pom : groovy/lang/GroovyObject {
public static synthetic field __$stMC Z
protected synthetic fun $getStaticMetaClass ()Lgroovy/lang/MetaClass;
public final class de/itemis/mps/gradle/Pom {
public fun <init> ()V
public fun getMetaClass ()Lgroovy/lang/MetaClass;
public fun setMetaClass (Lgroovy/lang/MetaClass;)V
public fun withDep (Lorg/gradle/api/publish/maven/MavenPom;Lorg/gradle/api/artifacts/Configuration;)Ljava/lang/Object;
public fun withProvidedDep (Lorg/gradle/api/publish/maven/MavenPom;Lorg/gradle/api/artifacts/Configuration;)Ljava/lang/Object;
public final fun withDep (Lorg/gradle/api/publish/maven/MavenPom;Lorg/gradle/api/artifacts/Configuration;)V
public final fun withProvidedDep (Lorg/gradle/api/publish/maven/MavenPom;Lorg/gradle/api/artifacts/Configuration;)V
}

public class de/itemis/mps/gradle/RunAntScript : org/gradle/api/DefaultTask {
Expand Down Expand Up @@ -197,12 +218,43 @@ public class de/itemis/mps/gradle/TestLanguages : de/itemis/mps/gradle/RunAntScr
public fun <init> ()V
}

public class de/itemis/mps/gradle/de/itemis/mps/gradle/CreateDmg : org/gradle/api/DefaultTask {
public field backgroundImage Ljava/io/File;
public field dmgFile Ljava/io/File;
public field jdk Ljava/io/File;
public field rcpArtifact Ljava/io/File;
public fun <init> ()V
public final fun build ()V
public final fun getBackgroundImage ()Ljava/io/File;
public final fun getDmgFile ()Ljava/io/File;
public final fun getJdk ()Ljava/io/File;
public final fun getRcpArtifact ()Ljava/io/File;
public final fun getSignIdentity ()Ljava/lang/String;
public final fun getSignKeyChain ()Ljava/io/File;
public final fun getSignKeyChainPassword ()Ljava/lang/String;
public final fun setBackgroundImage (Ljava/io/File;)V
public final fun setBackgroundImage (Ljava/lang/Object;)V
public final fun setDmgFile (Ljava/io/File;)V
public final fun setDmgFile (Ljava/lang/Object;)V
public final fun setJdk (Ljava/io/File;)V
public final fun setJdk (Ljava/lang/Object;)V
public final fun setJdkDependency (Ljava/lang/Object;)V
public final fun setRcpArtifact (Ljava/io/File;)V
public final fun setRcpArtifact (Ljava/lang/Object;)V
public final fun setSignIdentity (Ljava/lang/String;)V
public final fun setSignKeyChain (Ljava/io/File;)V
public final fun setSignKeyChain (Ljava/lang/Object;)V
public final fun setSignKeyChainPassword (Ljava/lang/String;)V
}

public class de/itemis/mps/gradle/downloadJBR/DownloadJbrConfiguration {
public field jbrVersion Ljava/lang/String;
public fun <init> (Lorg/gradle/api/model/ObjectFactory;)V
public final fun getDefaultJavaExecutable ()Z
public final fun getDistributionType ()Ljava/lang/String;
public final fun getDownloadDir ()Ljava/io/File;
public final fun getJbrVersion ()Ljava/lang/String;
public final fun setDefaultJavaExecutable (Z)V
public final fun setDistributionType (Ljava/lang/String;)V
public final fun setDownloadDir (Ljava/io/File;)V
public final fun setJbrVersion (Ljava/lang/String;)V
Expand Down
15 changes: 7 additions & 8 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,19 @@ buildscript {
}
}

val kotlinApiVersion by extra { "1.7" }
val kotlinVersion by extra { "$kotlinApiVersion.10" }

val kotlinApiVersion: String by project
val kotlinVersion: String by project

plugins {
groovy
`java-gradle-plugin`
`kotlin-dsl`
`maven-publish`
kotlin("jvm") version "1.7.10"
id("org.jetbrains.kotlinx.binary-compatibility-validator") version "0.13.2"
kotlin("jvm")
id("org.jetbrains.kotlinx.binary-compatibility-validator")
}

val baseVersion = "1.28.0"
val baseVersion = "1.29.0"

group = "de.itemis.mps"

Expand Down Expand Up @@ -60,8 +59,8 @@ dependencyLocking {
dependencies {
api("de.itemis.mps.gradle:git-based-versioning")
implementation(kotlin("stdlib", version = kotlinVersion))
implementation("net.swiftzer.semver:semver:1.1.2")
implementation("de.itemis.mps.build-backends:launcher:2.4.0.+")
implementation("net.swiftzer.semver:semver:2.0.0")
implementation("de.itemis.mps.build-backends:launcher:2.5.+")
testImplementation("junit:junit:4.13.2")
}

Expand Down
67 changes: 32 additions & 35 deletions buildscript-gradle.lockfile
Original file line number Diff line number Diff line change
@@ -1,42 +1,39 @@
# This is a Gradle generated file for dependency locking.
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
com.googlecode.java-diff-utils:diffutils:1.3.0=classpath
org.gradle.kotlin.kotlin-dsl:org.gradle.kotlin.kotlin-dsl.gradle.plugin:4.3.1=classpath
org.gradle.kotlin:gradle-kotlin-dsl-plugins:4.3.1=classpath
io.github.java-diff-utils:java-diff-utils:4.12=classpath
org.gradle.kotlin.kotlin-dsl:org.gradle.kotlin.kotlin-dsl.gradle.plugin:4.5.0=classpath
org.gradle.kotlin:gradle-kotlin-dsl-plugins:4.5.0=classpath
org.jetbrains.intellij.deps:trove4j:1.0.20200330=classpath
org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.7.10=classpath
org.jetbrains.kotlin:kotlin-android-extensions:1.9.22=classpath
org.jetbrains.kotlin:kotlin-assignment:1.9.22=classpath
org.jetbrains.kotlin:kotlin-build-tools-api:1.9.22=classpath
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.9.22=classpath
org.jetbrains.kotlin:kotlin-compiler-runner:1.9.22=classpath
org.jetbrains.kotlin:kotlin-daemon-client:1.9.22=classpath
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-annotations:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-idea:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22=classpath
org.jetbrains.kotlin:kotlin-gradle-plugins-bom:1.9.22=classpath
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.9.22=classpath
org.jetbrains.kotlin:kotlin-native-utils:1.9.22=classpath
org.jetbrains.kotlin:kotlin-project-model:1.9.22=classpath
org.jetbrains.kotlin:kotlin-sam-with-receiver:1.9.22=classpath
org.jetbrains.kotlin:kotlin-scripting-common:1.9.22=classpath
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.9.22=classpath
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.9.22=classpath
org.jetbrains.kotlin:kotlin-scripting-jvm:1.9.22=classpath
org.jetbrains.kotlin:kotlin-stdlib:1.9.22=classpath
org.jetbrains.kotlin:kotlin-tooling-core:1.9.22=classpath
org.jetbrains.kotlin:kotlin-util-io:1.9.22=classpath
org.jetbrains.kotlin:kotlin-util-klib:1.9.22=classpath
org.jetbrains.kotlinx.binary-compatibility-validator:org.jetbrains.kotlinx.binary-compatibility-validator.gradle.plugin:0.13.2=classpath
org.jetbrains.kotlinx:binary-compatibility-validator:0.13.2=classpath
org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.24=classpath
org.jetbrains.kotlin:kotlin-android-extensions:1.9.24=classpath
org.jetbrains.kotlin:kotlin-assignment:1.9.24=classpath
org.jetbrains.kotlin:kotlin-build-tools-api:1.9.24=classpath
org.jetbrains.kotlin:kotlin-compiler-embeddable:1.9.24=classpath
org.jetbrains.kotlin:kotlin-compiler-runner:1.9.24=classpath
org.jetbrains.kotlin:kotlin-daemon-client:1.9.24=classpath
org.jetbrains.kotlin:kotlin-daemon-embeddable:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-annotations:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-idea:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.24=classpath
org.jetbrains.kotlin:kotlin-gradle-plugins-bom:1.9.24=classpath
org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.9.24=classpath
org.jetbrains.kotlin:kotlin-native-utils:1.9.24=classpath
org.jetbrains.kotlin:kotlin-project-model:1.9.24=classpath
org.jetbrains.kotlin:kotlin-sam-with-receiver:1.9.24=classpath
org.jetbrains.kotlin:kotlin-scripting-common:1.9.24=classpath
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.9.24=classpath
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.9.24=classpath
org.jetbrains.kotlin:kotlin-scripting-jvm:1.9.24=classpath
org.jetbrains.kotlin:kotlin-stdlib:1.9.24=classpath
org.jetbrains.kotlin:kotlin-tooling-core:1.9.24=classpath
org.jetbrains.kotlin:kotlin-util-io:1.9.24=classpath
org.jetbrains.kotlin:kotlin-util-klib:1.9.24=classpath
org.jetbrains.kotlinx.binary-compatibility-validator:org.jetbrains.kotlinx.binary-compatibility-validator.gradle.plugin:0.16.3=classpath
org.jetbrains.kotlinx:binary-compatibility-validator:0.16.3=classpath
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.5.0=classpath
org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.6.2=classpath
org.jetbrains:annotations:13.0=classpath
org.ow2.asm:asm-tree:9.2=classpath
org.ow2.asm:asm:9.2=classpath
empty=
3 changes: 3 additions & 0 deletions docs/plugins/download-jbr.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ repositories {

downloadJbr {
jbrVersion = "11_0_6-b520.66"
defaultJavaExecutable.set(true) // optional
}
```

Expand All @@ -45,13 +46,15 @@ repositories {

downloadJbr {
jbrVersion = '11_0_6-b520.66'
defaultJavaExecutable.set(true) // optional
}
```

### Parameters

* `jbrVersion` - version of the JBR to download. While this supports maven version selectors we highly recommend not
using wildcards like `*` or `+` in there for reproducible builds.
* `defaultJavaExecutable` - set the downloaded JBR as the default Java executable
* `distributionType` - optional distribution type for the JBR to use. Will default to `jbr_jcef` if omitted.
* `downloadDir` - optional directory where the downloaded JBR is downloaded and extracted to. The plugin defaults to
`build/jbrDownload`.
Loading
Loading