diff options
| author | Leitwolf11 | 2026-11-06 08:23:12 +0300 |
|---|---|---|
| committer | Leitwolf11 | 2026-11-06 08:23:12 +0300 |
| commit | d17cee854076ddc3ea044e10be66b808af1f247c (patch) | |
| tree | 49df0937a7005a8f2439c7c516b76df5c52c9492 | |
| parent | 3da7af66f343e532a9ea2aa7236152bf2225499b (diff) | |
| download | tazel.net-d17cee854076ddc3ea044e10be66b808af1f247c.tar.gz | |
Show how a plugin build finds the Gradle plugin of Tazel 0.4.0.3
The Building a plugin section asked for com.progmasoft.tazel.plugin
0.4.0 from the Gradle Plugin Portal alone. The Portal does not serve it
yet, and the released version is 0.4.0.3. The example now has the
settings.gradle.kts that adds https://maven.progmasoft.com/tazel for the
group com.progmasoft.tazel, uses version 0.4.0.3, and adds Maven
Central, without which Kotlin's standard library does not resolve.
The example was built as written: the Gradle plugin and tazel-api
0.4.0.3 resolve and gradlew jar writes the plugin JAR with its
descriptor. Progmasoft/tazel carries the same change in
Documents/PLUGINS.md for the next release, so the next sync keeps it.
| -rw-r--r-- | content/en-US/docs/3.extending/1.plugins.md | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/content/en-US/docs/3.extending/1.plugins.md b/content/en-US/docs/3.extending/1.plugins.md index 1592632..5089adf 100644 --- a/content/en-US/docs/3.extending/1.plugins.md +++ b/content/en-US/docs/3.extending/1.plugins.md @@ -50,14 +50,33 @@ command fails with `resolved plugins were not declared by the script`. ## Building a plugin -A plugin is built with Gradle and the Gradle plugin `com.progmasoft.tazel.plugin`, whose version is the version of Tazel -the plugin is built for: +A plugin is built with Gradle 9 and the Gradle plugin `com.progmasoft.tazel.plugin`, whose version is the version of +Tazel the plugin is built for. Progmasoft publishes the Gradle plugin at `https://maven.progmasoft.com/tazel`, beside +the API, so the settings of the build name that repository for plugins: + +```kotlin +// settings.gradle.kts of the plugin +pluginManagement { + repositories { + gradlePluginPortal() + maven("https://maven.progmasoft.com/tazel") { + content { includeGroupByRegex("com\\.progmasoft\\.tazel(\\..*)?") } + } + } +} + +rootProject.name = "cmake-plugin" +``` ```kotlin // build.gradle.kts of the plugin plugins { kotlin("jvm") version "2.4.0" - id("com.progmasoft.tazel.plugin") version "0.4.0" + id("com.progmasoft.tazel.plugin") version "0.4.0.3" +} + +repositories { + mavenCentral() } version = "0.1.0" @@ -83,7 +102,7 @@ dependencies { The Gradle plugin -- adds the repository of the API, `https://maven.progmasoft.com/tazel`, for the group `com.progmasoft.tazel` only; +- adds the repository of the API, `https://maven.progmasoft.com/tazel`, for the group `com.progmasoft.tazel` only; Kotlin and anything else come from the repositories of the build, here Maven Central; - makes `tazelApi()` mean `compileOnly` and `testImplementation` of `com.progmasoft.tazel:tazel-api` in its own version. The API is not bundled: Tazel provides it, and the Kotlin standard library, when it loads the plugin; - writes the descriptor and the service entry below from `tazelPlugin { }` into the JAR. The version of the plugin is |