Skip to content

Commit 4ca997c

Browse files
committed
Don't add META-INF files from dependencies to jar
1 parent d4b78b3 commit 4ca997c

File tree

2 files changed

+5
-15
lines changed

2 files changed

+5
-15
lines changed

example/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ dependencies {
1010
// Only here to test dependency handling
1111
// And Kotlin is best dependency <3
1212
implementation(kotlin("stdlib", "1.8.22"))
13+
implementation("org.jetbrains.kotlinx", "kotlinx-serialization-json", "1.5.1")
1314
}
1415

1516
java {

src/main/kotlin/LavalinkGradlePlugin.kt

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import dev.arbjerg.lavalink.gradle.tasks.*
44
import org.gradle.api.Plugin
55
import org.gradle.api.Project
66
import org.gradle.api.artifacts.Dependency
7-
import org.gradle.api.artifacts.ProjectDependency
87
import org.gradle.api.provider.Provider
98
import org.gradle.api.tasks.Copy
109
import org.gradle.api.tasks.SourceSetContainer
@@ -75,22 +74,12 @@ private fun Project.configureTasks(serverDependency: Provider<Dependency>) {
7574
}
7675

7776
val jar = named<Jar>("jar") {
78-
// Workaround for Gradle only depending on the classes task, but this approach needing the actual jar file
79-
configurations.getByName("runtimeClasspath").dependencies.filterIsInstance<ProjectDependency>()
80-
.forEach {
81-
val jarTask = it.dependencyProject.tasks.findByPath("jar")
82-
if (jarTask != null) {
83-
dependsOn(jarTask)
84-
} else {
85-
logger.warn("Could not autoconfigure project dependency for ${it.dependencyProject.path} you might need to create a task dependency manually")
77+
configurations.getByName("runtimeClasspath").resolvedConfiguration.resolvedArtifacts
78+
.mapNotNull { dep -> dep.file }.forEach {
79+
from(zipTree(it)) {
80+
exclude("META-INF/**")
8681
}
8782
}
88-
doFirst {
89-
configurations.getByName("runtimeClasspath").resolvedConfiguration.resolvedArtifacts
90-
.mapNotNull { dep -> dep.file }.forEach {
91-
from(zipTree(it))
92-
}
93-
}
9483
}
9584

9685
val installPlugin by registering(Copy::class) {

0 commit comments

Comments
 (0)