diff --git a/dependencies.md b/dependencies.md
index 7dbe1ec82..a5f1fd93a 100644
--- a/dependencies.md
+++ b/dependencies.md
@@ -1,6 +1,6 @@
-# Dependencies of `io.spine.tools:compiler-api:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-api:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -1131,14 +1131,14 @@
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-api-tests:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-api-tests:2.0.0-SNAPSHOT.035`
## Runtime
## Compile, tests, and tooling
@@ -1504,14 +1504,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:05 WET 2025** using
+This report was generated on **Mon Dec 08 20:54:59 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-backend:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-backend:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -2646,14 +2646,14 @@ This report was generated on **Thu Dec 04 18:50:05 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-cli:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-cli:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -3837,14 +3837,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-gradle-api:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-gradle-api:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -4909,14 +4909,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-gradle-plugin:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-gradle-plugin:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -6029,14 +6029,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-jvm:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-jvm:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -7188,14 +7188,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-params:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-params:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -8318,14 +8318,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-protoc-plugin:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-protoc-plugin:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.google.code.findbugs. **Name** : jsr305. **Version** : 3.0.2.
@@ -9202,14 +9202,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:01 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-test-env:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-test-env:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -10340,14 +10340,14 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
-# Dependencies of `io.spine.tools:compiler-testlib:2.0.0-SNAPSHOT.034`
+# Dependencies of `io.spine.tools:compiler-testlib:2.0.0-SNAPSHOT.035`
## Runtime
1. **Group** : com.fasterxml.jackson. **Name** : jackson-bom. **Version** : 2.20.0.
@@ -11585,6 +11585,6 @@ This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
The dependencies distributed under several licenses, are used according their commercial-use-friendly license.
-This report was generated on **Thu Dec 04 18:50:06 WET 2025** using
+This report was generated on **Mon Dec 08 20:55:02 WET 2025** using
[Gradle-License-Report plugin](https://github.com/jk1/Gradle-License-Report) by Evgeny Naumenko, licensed under
[Apache 2.0 License](https://github.com/jk1/Gradle-License-Report/blob/master/LICENSE).
\ No newline at end of file
diff --git a/gradle-api/src/main/kotlin/io/spine/tools/compiler/gradle/api/ProjectExts.kt b/gradle-api/src/main/kotlin/io/spine/tools/compiler/gradle/api/ProjectExts.kt
index 7c474b7cb..080bb21d0 100644
--- a/gradle-api/src/main/kotlin/io/spine/tools/compiler/gradle/api/ProjectExts.kt
+++ b/gradle-api/src/main/kotlin/io/spine/tools/compiler/gradle/api/ProjectExts.kt
@@ -29,9 +29,11 @@ package io.spine.tools.compiler.gradle.api
import io.spine.tools.compiler.params.Directories.COMPILER_WORKING_DIR
import io.spine.tools.gradle.lib.spineExtension
import io.spine.tools.gradle.root.rootWorkingDir
+import io.spine.tools.meta.MavenArtifact
import java.io.File
import java.nio.file.Path
import org.gradle.api.Project
+import org.gradle.api.artifacts.Dependency
import org.gradle.api.file.Directory
import org.gradle.api.tasks.SourceSet
@@ -64,3 +66,26 @@ public fun Project.generatedDir(sourceSet: SourceSet, language: String = ""): Fi
val path = generatedDir.resolve("${sourceSet.name}/$language")
return path.toFile()
}
+
+/**
+ * Adds the given artifacts to the [spineCompiler][Names.USER_CLASSPATH_CONFIGURATION]
+ * configuration of this project.
+ */
+public fun Project.addUserClasspathDependency(vararg artifacts: MavenArtifact): Unit =
+ artifacts.forEach {
+ addDependency(Names.USER_CLASSPATH_CONFIGURATION, it)
+ }
+
+private fun Project.addDependency(configuration: String, artifact: MavenArtifact) {
+ val dependency = findDependency(artifact) ?: artifact.coordinates
+ dependencies.add(configuration, dependency)
+}
+
+private fun Project.findDependency(artifact: MavenArtifact): Dependency? {
+ val dependencies = configurations.flatMap { c -> c.dependencies }
+ val found = dependencies.firstOrNull { d ->
+ artifact.group == d.group // `d.group` could be `null`.
+ && artifact.name == d.name
+ }
+ return found
+}
diff --git a/pom.xml b/pom.xml
index ee4be756f..6cd4291a5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@ all modules and does not describe the project structure per-subproject.
-->
io.spine.tools
spine-compiler
-2.0.0-SNAPSHOT.034
+2.0.0-SNAPSHOT.035
2015
diff --git a/version.gradle.kts b/version.gradle.kts
index 0432f157d..009ded79f 100644
--- a/version.gradle.kts
+++ b/version.gradle.kts
@@ -30,7 +30,7 @@
* This version is also used by integration test projects.
* E.g. see `tests/consumer/build.gradle.kts`.
*/
-val compilerVersion: String by extra("2.0.0-SNAPSHOT.034")
+val compilerVersion: String by extra("2.0.0-SNAPSHOT.035")
/**
* The version, same as [compilerVersion], which is used for publishing