Implemented maven publishing

This commit is contained in:
Sebastian Sdorra
2021-01-07 15:19:40 +01:00
committed by René Pfeuffer
parent b7743ec796
commit 2bf87fb937
3 changed files with 53 additions and 9 deletions

View File

@@ -26,22 +26,51 @@ package com.cloudogu.scm
import com.hierynomus.gradle.license.tasks.LicenseCheck
import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.publish.maven.MavenPublication
import org.gradle.api.tasks.javadoc.Javadoc
import org.gradle.jvm.toolchain.JavaLanguageVersion
class JavaModulePlugin implements Plugin<Project> {
void apply(Project project) {
project.plugins.apply("java")
project.plugins.apply("maven-publish")
project.plugins.apply("com.github.hierynomus.license")
project.afterEvaluate {
project.java {
toolchain {
languageVersion = JavaLanguageVersion.of(11)
project.java {
toolchain {
languageVersion = JavaLanguageVersion.of(11)
}
withJavadocJar()
withSourcesJar()
}
project.compileJava {
options.release = 8
}
project.tasks.withType(Javadoc) {
failOnError false
}
project.publishing {
publications {
mavenJava(MavenPublication) {
artifactId project.name
project.afterEvaluate {
def component = project.components.findByName("web")
if (component == null) {
component = project.components.java
}
from component
}
}
}
project.compileJava {
options.release = 8
}
}
project.rootProject.publishing.repositories.each { r ->
project.publishing.repositories.add(r)
}
project.license {

View File

@@ -24,9 +24,10 @@
plugins {
id 'java-platform'
id 'maven-publish'
}
subprojects {
subprojects { s ->
repositories {
maven {
url 'https://packages.scm-manager.org/repository/public/'
@@ -38,6 +39,20 @@ allprojects {
apply from: rootProject.file('gradle/dependencies.gradle')
}
publishing {
publications {
mavenJava(MavenPublication) {
artifactId project.name
from components.javaPlatform
}
}
repositories {
maven {
url = "/tmp/repo"
}
}
}
dependencies {
constraints {
// lombok

View File

@@ -21,5 +21,5 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
group=sonia.scm
version=2.13.0-SNAPSHOT