Publishing Groovy Libraries Sample
version 8.12
You can open this sample in an IDE that supports Gradle. |
This sample shows how a Groovy library can be published to a repository with Gradle.
my-library/build.gradle.kts
plugins {
groovy
`maven-publish`
}
version = "1.0.2"
group = "org.gradle.sample"
repositories {
mavenCentral()
}
dependencies {
implementation("org.codehaus.groovy:groovy-all:3.0.22")
}
publishing {
publications {
create<MavenPublication>("library") {
from(components["java"])
}
}
repositories {
maven {
url = uri(layout.buildDirectory.dir("publishing-repository"))
}
}
}
my-library/build.gradle
plugins {
id 'groovy'
id 'maven-publish'
}
version = '1.0.2'
group = 'org.gradle.sample'
repositories {
mavenCentral()
}
dependencies {
implementation 'org.codehaus.groovy:groovy-all:3.0.22'
}
publishing {
publications {
library(MavenPublication) {
from components.java
}
}
repositories {
maven {
url = layout.buildDirectory.dir("publishing-repository")
}
}
}
To publish the library:
$ ./gradlew publish BUILD SUCCESSFUL 4 actionable tasks: 4 executed $ tree build/publishing-repository build/publishing-repository/ └── org └── gradle └── sample └── my-library ├── 1.0.2 │ ├── my-library-1.0.2.jar │ ├── my-library-1.0.2.jar.md5 │ ├── my-library-1.0.2.jar.sha1 │ ├── my-library-1.0.2.jar.sha256 │ ├── my-library-1.0.2.jar.sha512 │ ├── my-library-1.0.2.module │ ├── my-library-1.0.2.module.md5 │ ├── my-library-1.0.2.module.sha1 │ ├── my-library-1.0.2.module.sha256 │ ├── my-library-1.0.2.module.sha512 │ ├── my-library-1.0.2.pom │ ├── my-library-1.0.2.pom.md5 │ ├── my-library-1.0.2.pom.sha1 │ ├── my-library-1.0.2.pom.sha256 │ └── my-library-1.0.2.pom.sha512 ├── maven-metadata.xml ├── maven-metadata.xml.md5 ├── maven-metadata.xml.sha1 ├── maven-metadata.xml.sha256 └── maven-metadata.xml.sha512 5 directories, 20 files
For more information, see Publishing Libraries.