diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativeExternalDependenciesIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativeExternalDependenciesIT.kt index 0e136225441..82240d47467 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativeExternalDependenciesIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/native/NativeExternalDependenciesIT.kt @@ -99,11 +99,10 @@ class NativeExternalDependenciesIT : BaseGradleIT() { ) build( - "assemble", - options = defaultBuildOptions().copy(dryRun = true) + "buildExternalDependenciesFile" ) { assertSuccessful() - + assertTasksExecuted(":buildExternalDependenciesFile") val kotlinNativeTargetName = findKotlinNativeTargetName(output) assertNotNull(kotlinNativeTargetName) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-external-dependencies/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-external-dependencies/build.gradle.kts index 82e3f8719b3..8a16078ae01 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-external-dependencies/build.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/native-external-dependencies/build.gradle.kts @@ -17,12 +17,16 @@ kotlin { } } -afterEvaluate { - val externalDependenciesFile = Class.forName("org.jetbrains.kotlin.gradle.tasks.ExternalDependenciesBuilder") - .getDeclaredMethod("buildExternalDependenciesFileForTests", Project::class.java).apply { isAccessible = true } - .invoke(null, project) - ?.toString().orEmpty() +val buildExternalDependenciesFile = tasks.register("buildExternalDependenciesFile") { + doLast { + val externalDependenciesFile = Class.forName("org.jetbrains.kotlin.gradle.tasks.ExternalDependenciesBuilder") + .getDeclaredMethod("buildExternalDependenciesFileForTests", Project::class.java).apply { isAccessible = true } + .invoke(null, project) + ?.toString().orEmpty() - println("for_test_kotlin_native_target=") - println("for_test_external_dependencies_file=$externalDependenciesFile") + println("for_test_kotlin_native_target=") + println("for_test_external_dependencies_file=$externalDependenciesFile") + } } + +tasks.getByName("assemble").dependsOn(buildExternalDependenciesFile) \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/AbstractKotlinSourceSet.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/AbstractKotlinSourceSet.kt index 538c9200b1f..078a71f662f 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/AbstractKotlinSourceSet.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/sources/AbstractKotlinSourceSet.kt @@ -34,7 +34,7 @@ abstract class AbstractKotlinSourceSet : InternalKotlinSourceSet { final override fun dependsOn(other: KotlinSourceSet) { if (other == this) return - assert(project.kotlinPluginLifecycle.stage <= KotlinPluginLifecycle.Stage.FinaliseRefinesEdges) { + check(project.kotlinPluginLifecycle.stage <= KotlinPluginLifecycle.Stage.FinaliseRefinesEdges) { "Illegal 'dependsOn' call in stage '${project.kotlinPluginLifecycle.stage}'" }