1+ import com.vanniktech.maven.publish.JavadocJar
2+ import com.vanniktech.maven.publish.KotlinJvm
13import org.apache.tools.ant.filters.ReplaceTokens
24import org.springframework.boot.gradle.tasks.bundling.BootJar
35import org.springframework.boot.gradle.tasks.run.BootRun
46
57plugins {
68 application
7- `maven- publish`
89 kotlin(" jvm" )
910 id(" org.jetbrains.dokka" )
11+ alias(libs.plugins.maven.publish.base)
1012}
1113
1214apply (plugin = " org.springframework.boot" )
@@ -15,28 +17,17 @@ apply(plugin = "org.ajoberstar.grgit")
1517apply (plugin = " com.adarshr.test-logger" )
1618apply (plugin = " kotlin" )
1719apply (plugin = " kotlin-spring" )
18- apply (from = " ../repositories.gradle" )
1920
2021val archivesBaseName = " Lavalink"
2122group = " dev.arbjerg.lavalink"
2223description = " Play audio to discord voice channels"
2324
2425application {
25- mainClass.set( " lavalink.server.Launcher" )
26+ mainClass = " lavalink.server.Launcher"
2627}
2728
2829java {
2930 sourceCompatibility = JavaVersion .VERSION_17
30- targetCompatibility = JavaVersion .VERSION_17
31- withJavadocJar()
32- withSourcesJar()
33- }
34-
35- val dokkaJar by tasks.registering(Jar ::class ) {
36- group = JavaBasePlugin .DOCUMENTATION_GROUP
37- description = " Assembles Javadoc with Dokka"
38- archiveClassifier.set(" javadoc" )
39- from(tasks.dokkaJavadoc)
4031}
4132
4233configurations {
@@ -104,11 +95,11 @@ tasks {
10495
10596 // https://stackoverflow.com/questions/41444916/multiple-artifacts-issue-with-deploying-zip-to-nexus
10697 named<AbstractArchiveTask >(" bootDistTar" ) {
107- archiveClassifier.set( " bootTar" )
98+ archiveClassifier = " bootTar"
10899 }
109100
110101 named<AbstractArchiveTask >(" bootDistZip" ) {
111- archiveClassifier.set( " bootZip" )
102+ archiveClassifier = " bootZip"
112103 }
113104
114105 named<Test >(" test" ) {
@@ -125,16 +116,16 @@ tasks {
125116 }
126117 })
127118
128- archiveBaseName.set( " lavaplayer-natives" )
129- archiveClassifier.set( " musl" )
119+ archiveBaseName = " lavaplayer-natives"
120+ archiveClassifier = " musl"
130121 }
131122
132123
133124 withType<BootJar > {
134- archiveFileName.set( " Lavalink.jar" )
125+ archiveFileName = " Lavalink.jar"
135126
136127 if (findProperty(" targetPlatform" ) == " musl" ) {
137- archiveFileName.set( " Lavalink-musl.jar" )
128+ archiveFileName = " Lavalink-musl.jar"
138129 // Exclude base dependency jar
139130 exclude {
140131 it.name.contains(" lavaplayer-natives-fork" ) || (it.name.contains(" udpqueue-native-" ) && ! it.name.contains(" musl" ))
@@ -162,39 +153,18 @@ tasks {
162153 }
163154}
164155
156+ mavenPublishing {
157+ configure(KotlinJvm (JavadocJar .Dokka (" dokkaHtml" )))
158+ pom {
159+ name = " Lavalink Server"
160+ description = " Lavalink Server"
161+ }
162+ }
163+
165164publishing {
166165 publications {
167- create <MavenPublication >(" LavalinkServer " ) {
166+ named <MavenPublication >(" maven " ) {
168167 artifact(tasks.named(" bootJar" ))
169- artifact(tasks.kotlinSourcesJar)
170- artifact(dokkaJar)
171-
172- pom {
173- name.set(" Lavalink Server" )
174- description.set(" Lavalink Server" )
175- url.set(" https://github.com/lavalink-devs/lavalink" )
176-
177- licenses {
178- license {
179- name.set(" The MIT License" )
180- url.set(" https://github.com/lavalink-devs/Lavalink/blob/master/LICENSE" )
181- }
182- }
183-
184- developers {
185- developer {
186- id.set(" freyacodes" )
187- name.set(" Freya Arbjerg" )
188- url.set(" https://www.arbjerg.dev" )
189- }
190- }
191-
192- scm {
193- connection.set(" scm:git:ssh://github.com/lavalink-devs/lavalink.git" )
194- developerConnection.set(" scm:git:ssh://github.com/lavalink-devs/lavalink.git" )
195- url.set(" https://github.com/lavalink-devs/lavalink" )
196- }
197- }
198168 }
199169 }
200170}
0 commit comments