Revert "Fix source set resources filtering broken by refactoring"
This reverts commit 6af6834
This commit is contained in:
-35
@@ -308,41 +308,6 @@ class NewMultiplatformIT : BaseGradleIT() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
fun testResourceFilteringAndSourceTrackingWithJava() = with(Project("simpleProject")) {
|
|
||||||
setupWorkingDir()
|
|
||||||
gradleBuildScript().appendText(
|
|
||||||
"\n" + """
|
|
||||||
// Test 1 -- check that Kotlin sources are correctly filtered out of resources, even those added late at configuration time:
|
|
||||||
sourceSets.main.resources.srcDir('src/main/kotlin')
|
|
||||||
sourceSets.main.resources.srcDir('src/foo/kotlin')
|
|
||||||
kotlin.target.compilations.main.source(kotlin.sourceSets.create('foo'))
|
|
||||||
|
|
||||||
// Test 2 -- check that Java sources from the Kotlin source directories are correctly tracked under `allJava` in the source set:
|
|
||||||
sourceSets.main.allJava.files.each { println "allJava:${'$'}{it.name}" }
|
|
||||||
""".trimIndent()
|
|
||||||
)
|
|
||||||
listOf("src/foo/kotlin/foo.kt", "src/main/resources/foo.txt", "src/foo/kotlin/foo.java").forEach { path ->
|
|
||||||
projectDir.resolve(path).apply { parentFile.mkdirs(); writeText("foo") }
|
|
||||||
}
|
|
||||||
|
|
||||||
build("processResources") {
|
|
||||||
assertSuccessful()
|
|
||||||
|
|
||||||
// Test 1 (see above)
|
|
||||||
assertTasksExecuted(":processResources")
|
|
||||||
assertFileExists("build/resources/main/foo.txt")
|
|
||||||
assertNoSuchFile("build/resources/main/helloWorld.kt")
|
|
||||||
assertNoSuchFile("build/resources/main/foo.kt")
|
|
||||||
|
|
||||||
// Test 2 (see above)
|
|
||||||
assertContains("allJava:Greeter.java")
|
|
||||||
assertContains("allJava:HelloWorld.java")
|
|
||||||
assertContains("allJava:foo.java")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testResolveMppLibDependencyToMetadata() {
|
fun testResolveMppLibDependencyToMetadata() {
|
||||||
val libProject = Project("sample-lib", gradleVersion, "new-mpp-lib-and-app")
|
val libProject = Project("sample-lib", gradleVersion, "new-mpp-lib-and-app")
|
||||||
|
|||||||
+8
-12
@@ -37,6 +37,7 @@ import org.jetbrains.kotlin.gradle.tasks.*
|
|||||||
import org.jetbrains.kotlin.gradle.utils.*
|
import org.jetbrains.kotlin.gradle.utils.*
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.net.URL
|
import java.net.URL
|
||||||
|
import java.util.*
|
||||||
import java.util.concurrent.Callable
|
import java.util.concurrent.Callable
|
||||||
import java.util.jar.Manifest
|
import java.util.jar.Manifest
|
||||||
|
|
||||||
@@ -115,20 +116,15 @@ internal abstract class KotlinJavaSourceSetProcessor<T : AbstractKotlinCompile<*
|
|||||||
if (javaSourceSet == null)
|
if (javaSourceSet == null)
|
||||||
return
|
return
|
||||||
|
|
||||||
val kotlinDirSets = kotlinCompilation.kotlinSourceSets
|
val kotlinDirSets = kotlinCompilation.kotlinSourceSets.map(KotlinSourceSet::kotlin)
|
||||||
|
|
||||||
// run lazily to support changing kotlinSourceSets after plugin is applied
|
// Try to avoid duplicate Java sources in allSource:
|
||||||
val kotlinSrcDirsToAdd = Callable {
|
val kotlinSrcDirsToAdd = kotlinDirSets.map { filterOutJavaSrcDirsIfPossible(it) }
|
||||||
// Try to avoid duplicate Java sources in allSource:
|
|
||||||
kotlinDirSets.map { filterOutJavaSrcDirsIfPossible(it.kotlin) }
|
|
||||||
}
|
|
||||||
|
|
||||||
javaSourceSet.allJava.srcDirs(kotlinSrcDirsToAdd)
|
kotlinSrcDirsToAdd.forEach { kotlinSrcDirs ->
|
||||||
javaSourceSet.allSource.srcDirs(kotlinSrcDirsToAdd)
|
javaSourceSet.allJava.srcDirs(kotlinSrcDirs)
|
||||||
|
javaSourceSet.allSource.srcDirs(kotlinSrcDirs)
|
||||||
javaSourceSet.resources.filter.exclude { fileTreeElement ->
|
javaSourceSet.resources.filter.exclude { it.file in kotlinSrcDirs }
|
||||||
val file = fileTreeElement.file
|
|
||||||
kotlinDirSets.any { file in it.kotlin }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user