diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeMultiplatformImportFactory.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeMultiplatformImportFactory.kt index cc23ddf6bac..ab8cf0b2f04 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeMultiplatformImportFactory.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeMultiplatformImportFactory.kt @@ -9,8 +9,8 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer import org.jetbrains.kotlin.gradle.kpm.idea.kotlinDebugKey import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeDependsOnDependencyResolver -import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformDependencyResolver -import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformDependencyResolver +import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformBinaryDependencyResolver +import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformBinaryDependencyResolver import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeTransformedMetadataDependencyResolver fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultiplatformImport { @@ -31,7 +31,7 @@ fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultipla ) registerDependencyResolver( - resolver = IdePlatformDependencyResolver(), + resolver = IdePlatformBinaryDependencyResolver(), constraint = IdeMultiplatformImport.SourceSetConstraint.isPlatform, phase = IdeMultiplatformImport.DependencyResolutionPhase.BinaryDependencyResolution, level = IdeMultiplatformImport.DependencyResolutionLevel.Default @@ -42,7 +42,7 @@ fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultipla This resolver will resolve dependencies visible to the source set from a 'jvm' perspective. */ registerDependencyResolver( - resolver = IdeJvmAndAndroidPlatformDependencyResolver(extension.project), + resolver = IdeJvmAndAndroidPlatformBinaryDependencyResolver(extension.project), constraint = IdeMultiplatformImport.SourceSetConstraint.isJvmAndAndroid, phase = IdeMultiplatformImport.DependencyResolutionPhase.BinaryDependencyResolution, level = IdeMultiplatformImport.DependencyResolutionLevel.Default diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdeJvmAndAndroidPlatformDependencyResolver.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdeJvmAndAndroidPlatformDependencyResolver.kt index 915f49b775a..4f3cd122a01 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdeJvmAndAndroidPlatformDependencyResolver.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdeJvmAndAndroidPlatformDependencyResolver.kt @@ -20,17 +20,18 @@ import org.jetbrains.kotlin.gradle.utils.named /** * Resolves dependencies of jvm and Android source sets from the perspective jvm */ -internal fun IdeJvmAndAndroidPlatformDependencyResolver(project: Project): IdeDependencyResolver = IdePlatformDependencyResolver( - binaryType = IdeaKotlinDependency.CLASSPATH_BINARY_TYPE, - artifactResolutionStrategy = IdePlatformDependencyResolver.ArtifactResolutionStrategy.PlatformLikeSourceSet( - setupPlatformResolutionAttributes = { - attributes.attribute(Usage.USAGE_ATTRIBUTE, project.usageByName(Usage.JAVA_API)) - attributes.attribute(Category.CATEGORY_ATTRIBUTE, project.objects.named(Category.LIBRARY)) - attributes.attribute(KotlinPlatformType.attribute, KotlinPlatformType.jvm) - attributes.attribute( - TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE, - project.objects.named(TargetJvmEnvironment.STANDARD_JVM) - ) - }, +internal fun IdeJvmAndAndroidPlatformBinaryDependencyResolver(project: Project): IdeDependencyResolver = + IdePlatformBinaryDependencyResolver( + binaryType = IdeaKotlinDependency.CLASSPATH_BINARY_TYPE, + artifactResolutionStrategy = IdePlatformBinaryDependencyResolver.ArtifactResolutionStrategy.PlatformLikeSourceSet( + setupPlatformResolutionAttributes = { + attributes.attribute(Usage.USAGE_ATTRIBUTE, project.usageByName(Usage.JAVA_API)) + attributes.attribute(Category.CATEGORY_ATTRIBUTE, project.objects.named(Category.LIBRARY)) + attributes.attribute(KotlinPlatformType.attribute, KotlinPlatformType.jvm) + attributes.attribute( + TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE, + project.objects.named(TargetJvmEnvironment.STANDARD_JVM) + ) + }, + ) ) -) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdePlatformDependencyResolver.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdePlatformBinaryDependencyResolver.kt similarity index 98% rename from libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdePlatformDependencyResolver.kt rename to libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdePlatformBinaryDependencyResolver.kt index e5de376ce89..f21cfbe341b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdePlatformDependencyResolver.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/dependencyResolvers/IdePlatformBinaryDependencyResolver.kt @@ -27,7 +27,7 @@ import org.jetbrains.kotlin.gradle.plugin.sources.* import org.jetbrains.kotlin.gradle.targets.metadata.ALL_COMPILE_METADATA_CONFIGURATION_NAME import org.jetbrains.kotlin.tooling.core.mutableExtrasOf -internal class IdePlatformDependencyResolver( +internal class IdePlatformBinaryDependencyResolver( private val binaryType: String = IdeaKotlinDependency.CLASSPATH_BINARY_TYPE, private val artifactResolutionStrategy: ArtifactResolutionStrategy = ArtifactResolutionStrategy.Compilation() ) : IdeDependencyResolver { @@ -152,6 +152,6 @@ internal class IdePlatformDependencyResolver( } private companion object { - val logger = Logging.getLogger(IdePlatformDependencyResolver::class.java) + val logger = Logging.getLogger(IdePlatformBinaryDependencyResolver::class.java) } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdeJvmAndAndroidPlatformDependencyResolverTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdeJvmAndAndroidPlatformDependencyResolverTest.kt index 6bd77f5b634..a83e5044d88 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdeJvmAndAndroidPlatformDependencyResolverTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdeJvmAndAndroidPlatformDependencyResolverTest.kt @@ -12,7 +12,7 @@ import org.jetbrains.kotlin.gradle.dsl.multiplatformExtension import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.assertMatches import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.binaryCoordinates import org.jetbrains.kotlin.gradle.kpm.idea.mavenCentralCacheRedirector -import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformDependencyResolver +import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformBinaryDependencyResolver import org.jetbrains.kotlin.gradle.utils.androidExtension import kotlin.test.BeforeTest import kotlin.test.Test @@ -66,10 +66,10 @@ class IdeJvmAndAndroidPlatformDependencyResolverTest { binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-common:1.7.10") ) - IdeJvmAndAndroidPlatformDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidMain")) + IdeJvmAndAndroidPlatformBinaryDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidMain")) .assertMatches(jvmAndAndroidDependencies) - IdeJvmAndAndroidPlatformDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidTest")) + IdeJvmAndAndroidPlatformBinaryDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidTest")) .assertMatches(jvmAndAndroidDependencies) } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdePlatformDependencyResolverTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdePlatformBinaryDependencyResolverTest.kt similarity index 85% rename from libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdePlatformDependencyResolverTest.kt rename to libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdePlatformBinaryDependencyResolverTest.kt index 1974fd7f70b..75173de9e9b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdePlatformDependencyResolverTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/ide/IdePlatformBinaryDependencyResolverTest.kt @@ -15,10 +15,10 @@ import org.jetbrains.kotlin.gradle.enableDependencyVerification import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.assertMatches import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.binaryCoordinates import org.jetbrains.kotlin.gradle.kpm.idea.mavenCentralCacheRedirector -import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformDependencyResolver +import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformBinaryDependencyResolver import kotlin.test.Test -class IdePlatformDependencyResolverTest { +class IdePlatformBinaryDependencyResolverTest { @Test fun `test - MVIKotlin - on jvm and linux platform source sets`() { @@ -46,7 +46,7 @@ class IdePlatformDependencyResolverTest { } /* This resolver shall refuse to resolve for dependencies for metadata based dependencies */ - IdePlatformDependencyResolver().resolve(commonMain).assertMatches() + IdePlatformBinaryDependencyResolver().resolve(commonMain).assertMatches() val jvmDependencies = listOf( binaryCoordinates("com.arkivanov.mvikotlin:mvikotlin-jvm:3.0.2"), @@ -72,9 +72,9 @@ class IdePlatformDependencyResolverTest { binaryCoordinates("com.arkivanov.essenty:utils-internal-linuxx64:0.4.2"), ) - IdePlatformDependencyResolver().resolve(jvmMain).assertMatches(jvmDependencies) - IdePlatformDependencyResolver().resolve(jvmTest).assertMatches(jvmDependencies) - IdePlatformDependencyResolver().resolve(linuxX64Main).assertMatches(linuxDependencies) - IdePlatformDependencyResolver().resolve(linuxX64Test).assertMatches(linuxDependencies) + IdePlatformBinaryDependencyResolver().resolve(jvmMain).assertMatches(jvmDependencies) + IdePlatformBinaryDependencyResolver().resolve(jvmTest).assertMatches(jvmDependencies) + IdePlatformBinaryDependencyResolver().resolve(linuxX64Main).assertMatches(linuxDependencies) + IdePlatformBinaryDependencyResolver().resolve(linuxX64Test).assertMatches(linuxDependencies) } }