Publishing multimodule gradle project (Gradle Kotlin DSL)

Sc0uty

Cadet 3rd Year
Registriert
Dez. 2016
Beiträge
34
Hallo, ich Arbeite mit einem 13 Köpfigen Team an einem Siedler IV Community Patch.
Wir programmieren gerade ein voll Automatisches Ranked-System.
Da sind wir aber auf ein Problem gestoßen.

Ich zitiere einmal den Main-Programmer.

" Moin, ich hänge gerade an einer Stelle fest, mit der ich mich noch nie beschäftigt habe. Ich habe mehrere Bibliotheken auf Github und möchte die so veröffentlichen, dass man sie mit Maven oder Gradle schnell einbinden kann. Ich habe aber keinerlei Ahnung wie ich das anstellen soll.. wenn jemand das von euch schon mal gemacht hat, wäre es super, wenn derjenige sich mal mit mir zusammensetzt. "

Und einmal sein Stackoverflow Beitrag :

"

I want to publish a project which contains several modules, each module should be published individually. The modules depend on each other. I am a complete newcomer in this field and have watched a few videos, so I came to OSSHR, created a repository and now I don't know how I can publish the modules there using Gradle.

Affected github repository: https://github.com/oberstrike/test-framework

I tried to make it work with the script, but all I get is a null pointer exception:

"
pply(plugin = "maven")

val groupId = extra["PUBLISH_GROUP_ID"] as String
val artifactId = extra["PUBLISH_ARTIFACT_ID"] as String
val myVersion = extra["PUBLISH_VERSION"] as String

val localReleaseDest = "${buildDir}/release/${myVersion}"

val bitBucketUrl = "git:releases://git@bitbucket.org/oberstrike/test-framework.git"
val bitBucketUser = "test"
val bitbucketPassword = "test"

tasks.register("uploadArchives", Upload::class) {

val url = "$bitBucketUrl/releases"

repositories {
withConvention(MavenRepositoryHandlerConvention::class) {
mavenDeployer {
pom {
groupId = groupId
artifactId = artifactId
version = myVersion
}

println(url)


withGroovyBuilder {
"repository"("url" to uri(url)) {
"authentication"("userName" to bitBucketUser, "password" to bitbucketPassword)
}

}

}
}
println("this $this")
}
}


tasks.register("generateRelease") {
doLast {
println("Release $version can be found at $localReleaseDest/")
println("Release $version zipped can be found $buildDir/$artifactId-release-$version.zip")
}

dependsOn("uploadArchives", "zipRelease")

}
tasks.register("zipRelease", Zip::class) {
from(localReleaseDest) {
destinationDirectory.set(buildDir)
archiveFileName.set("$artifactId-release-$myVersion.zip")
}
}

Links : https://stackoverflow.com/questions/64010988/publishing-multimodule-gradle-project-gradle-kotlin-dsl
github.com/LitzeYT/Settlers4Patch

Vielleicht kennt ja hier jemand eine Lösung

Mit Freundlichen Grüßen
Sc0uty
Leiter des Siedler IV Community Patch Team
 
Benutz bitte die "Code" Funktion hier im Forum und poste damit. Das ist wesentlich einfacher zu lesen und übersichtlicher.
 
  • Gefällt mir
Reaktionen: Hayda Ministral

Ähnliche Themen

Zurück
Oben