diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt index 94ce3308bc9..90821fb308c 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinSpecificDependenciesIT.kt @@ -560,7 +560,7 @@ class KotlinSpecificDependenciesIT : KGPBaseTest() { } else { "org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompileTool" } - val expression = """(tasks.getByName("$taskName") as $taskClass).libraries.toList()""" + val expression = """(tasks.getByName("$taskName") as $taskClass).${if (isNative) "libraries" else "classpath"}.toList()""" checkPrintedItems(subproject, expression, checkModulesInClasspath, checkModulesNotInClasspath, isBuildGradleKts) } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/Kapt3KotlinGradleSubplugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/Kapt3KotlinGradleSubplugin.kt index 616a92a1bc4..1b86fb8f013 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/Kapt3KotlinGradleSubplugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/Kapt3KotlinGradleSubplugin.kt @@ -516,7 +516,7 @@ class Kapt3GradleSubplugin @Inject internal constructor(private val registry: To // the configuration is not extended (via extendsFrom, which normally happens when one configuration is _added_ into another) // but is instead included as the (lazily) resolved files. This is needed because the class structure configuration doesn't have // the attributes that are potentially needed to resolve dependencies on MPP modules, and the classpath configuration does. - project.dependencies.add(classStructureIfIncremental.name, project.files(project.provider { kotlinCompile.get().libraries })) + project.dependencies.add(classStructureIfIncremental.name, project.files(project.provider { kotlinCompile.get().classpath })) } val kaptClasspathConfiguration = project.configurations.create("kaptClasspath_$taskName") diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptGenerateStubsTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptGenerateStubsTask.kt index 05d86b813bd..361e7aad6bb 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptGenerateStubsTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptGenerateStubsTask.kt @@ -61,7 +61,7 @@ abstract class KaptGenerateStubsTask @Inject constructor( val providerFactory = kotlinCompileTask.project.providers task.useModuleDetection.value(kotlinCompileTask.useModuleDetection).disallowChanges() task.moduleName.value(kotlinCompileTask.moduleName).disallowChanges() - task.libraries.from(kotlinCompileTask.libraries) + task.classpath.from(kotlinCompileTask.classpath) task.kotlinTaskPluginClasspath.from( providerFactory.provider { kotlinCompileTask.pluginClasspath } ) @@ -163,7 +163,7 @@ abstract class KaptGenerateStubsTask @Inject constructor( args.pluginOptions = (pluginOptionsWithKapt.arguments + args.pluginOptions!!).toTypedArray() args.verbose = verbose.get() - args.classpathAsList = this.libraries.filter { it.exists() }.toList() + args.classpathAsList = this.classpath.filter { it.exists() }.toList() args.destinationAsFile = this.destinationDirectory.get().asFile } } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptTask.kt index ecc39ce4d53..77afeff7217 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/kapt/KaptTask.kt @@ -40,7 +40,7 @@ abstract class KaptTask @Inject constructor( val objectFactory = task.project.objects task.compilerClasspath.from({ kotlinCompileTask.defaultCompilerClasspath }) - task.classpath.from(kotlinCompileTask.libraries) + task.classpath.from(kotlinCompileTask.classpath) task.compiledSources.from( kotlinCompileTask.destinationDirectory, Callable { kotlinCompileTask.javaOutputDir.takeIf { it.isPresent } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/model/builder/KotlinModelBuilder.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/model/builder/KotlinModelBuilder.kt index d8c247a8e9c..d14226e2dae 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/model/builder/KotlinModelBuilder.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/model/builder/KotlinModelBuilder.kt @@ -126,7 +126,7 @@ class KotlinModelBuilder(private val kotlinPluginVersion: String, private val an return CompilerArgumentsImpl( serializedCompilerArguments, defaultSerializedCompilerArguments, - libraries.toList() + classpath.toList() ) } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt index e8789e3606f..b9964ac5314 100755 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt @@ -122,7 +122,7 @@ internal abstract class KotlinSourceSetProcessor>( return register(project, name) { it.description = taskDescription it.destinationDirectory.set(defaultKotlinDestinationDir) - it.libraries.from({ kotlinCompilation.compileDependencyFiles }) + it.classpath.from({ kotlinCompilation.compileDependencyFiles }) } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt index 0c437b9132f..9211349f80e 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt @@ -59,7 +59,7 @@ class Android25ProjectHandler( val preJavaClasspathKey = variantData.registerPreJavacGeneratedBytecode(preJavaKotlinOutput) kotlinTask.configure { kotlinTaskInstance -> - kotlinTaskInstance.libraries + kotlinTaskInstance.classpath .from(variantData.getCompileClasspath(preJavaClasspathKey)) .from(Callable { AndroidGradleWrapper.getRuntimeJars(androidPlugin, androidExt) }) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsDcePlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsDcePlugin.kt index 946abc5ce5a..39e54039b15 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsDcePlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsDcePlugin.kt @@ -76,7 +76,7 @@ class KotlinJsDcePlugin : Plugin { val configuration = project.configurations.getByName(kotlinCompilation.compileDependencyConfigurationName) dceTask.configure { - it.libraries.from(configuration) + it.classpath.from(configuration) it.destinationDirectory.set(it.dceOptions.outputDirectory?.let { File(it) } ?: outputDir) it.setSource(kotlinTask.map { task -> (task as Kotlin2JsCompile).outputFileProperty }) } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinBrowserJs.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinBrowserJs.kt index 141a8d988fc..de3e29fedfc 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinBrowserJs.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinBrowserJs.kt @@ -308,7 +308,7 @@ open class KotlinBrowserJs @Inject constructor(target: KotlinJsTarget) : it.kotlinFilesOnly = true - it.libraries.from(project.configurations.getByName(compilation.runtimeDependencyConfigurationName)) + it.classpath.from(project.configurations.getByName(compilation.runtimeDependencyConfigurationName)) it.destinationDirectory.set( it.dceOptions.outputDirectory?.let { File(it) } ?: compilation.npmProject.dir.resolve(if (dev) DCE_DEV_DIR else DCE_DIR) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt index 8eb80df9f09..c5d865d9599 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/native/tasks/KotlinNativeTasks.kt @@ -159,12 +159,10 @@ abstract class AbstractKotlinNativeCompile< } @get:Classpath - override val libraries: ConfigurableFileCollection by project.provider { + val libraries: FileCollection by project.provider { // Avoid resolving these dependencies during task graph construction when we can't build the target: if (konanTarget.enabledOnCurrentHost) - objectFactory.fileCollection().from( - compilation.compileDependencyFiles.filterOutPublishableInteropLibs(project) - ) + compilation.compileDependencyFiles.filterOutPublishableInteropLibs(project) else objectFactory.fileCollection() } @@ -173,6 +171,10 @@ abstract class AbstractKotlinNativeCompile< project.files(compilation.friendPaths) } + @Deprecated("For native tasks use 'libraries' instead", ReplaceWith("libraries")) + override val classpath: ConfigurableFileCollection + get() = objectFactory.fileCollection().from(libraries) + @get:Input val target: String by project.provider { compilation.konanTarget.name } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt index 51f94ee7cc6..8b7fe7c3feb 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt @@ -116,7 +116,7 @@ abstract class KotlinCompileCommon @Inject constructor( if (defaultsOnly) return - val classpathList = libraries.files.filter { it.exists() }.toMutableList() + val classpathList = classpath.files.filter { it.exists() }.toMutableList() with(args) { classpath = classpathList.joinToString(File.pathSeparator) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinJsDce.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinJsDce.kt index cc4eecf5ac4..009e7618c72 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinJsDce.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinJsDce.kt @@ -84,7 +84,7 @@ abstract class KotlinJsDce @Inject constructor( @get:Incremental @get:InputFiles - abstract override val libraries: ConfigurableFileCollection + abstract override val classpath: ConfigurableFileCollection private val buildDir = project.layout.buildDirectory @@ -103,11 +103,11 @@ abstract class KotlinJsDce @Inject constructor( val shouldPerformIncrementalCopy = isDevMode && !isExplicitDevModeAllStrategy val classpathFiles = if (shouldPerformIncrementalCopy) { - inputChanges.getFileChanges(libraries) + inputChanges.getFileChanges(classpath) .filter { it.changeType == ChangeType.MODIFIED || it.changeType == ChangeType.ADDED } .map { it.file } } else { - libraries.asFileTree.files + classpath.asFileTree.files } val inputFiles = sources.asFileTree.files.plus(classpathFiles) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt index 9da06c3b48c..6e747c82dcc 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt @@ -172,7 +172,7 @@ abstract class AbstractKotlinCompileTool @Inject constr @get:Classpath @get:Incremental - abstract val libraries: ConfigurableFileCollection + abstract val classpath: ConfigurableFileCollection @get:OutputDirectory abstract val destinationDirectory: DirectoryProperty @@ -480,7 +480,7 @@ abstract class AbstractKotlinCompile @Inject constr protected open val incrementalProps: List get() = listOfNotNull( sources, - libraries, + classpath, commonSourceSet ) @@ -578,7 +578,7 @@ class KotlinJvmCompilerArgumentsProvider (taskProvider: KotlinCompile) : KotlinCompileArgumentsProvider(taskProvider) { val moduleName: String = taskProvider.moduleName.get() val friendPaths: FileCollection = taskProvider.friendPaths - val compileClasspath: Iterable = taskProvider.libraries + val compileClasspath: Iterable = taskProvider.classpath val destinationDir: File = taskProvider.destinationDirectory.get().asFile internal val kotlinOptions: List = listOfNotNull( taskProvider.parentKotlinOptionsImpl.orNull as? KotlinJvmOptionsImpl, @@ -621,7 +621,7 @@ abstract class KotlinCompile @Inject constructor( if (properties.useClasspathSnapshot) { registerTransformsOnce(project) project.configurations.create(classpathSnapshotConfigurationName(taskProvider.name)).apply { - project.dependencies.add(name, project.files(project.provider { taskProvider.get().libraries })) + project.dependencies.add(name, project.files(project.provider { taskProvider.get().classpath })) } } } @@ -686,7 +686,7 @@ abstract class KotlinCompile @Inject constructor( val classpathSnapshotDir = getClasspathSnapshotDir(task) task.classpathSnapshotProperties.classpathSnapshotDir.value(classpathSnapshotDir).disallowChanges() } else { - task.classpathSnapshotProperties.classpath.from(task.project.provider { task.libraries }) + task.classpathSnapshotProperties.classpath.from(task.project.provider { task.classpath }) } } } @@ -710,22 +710,7 @@ abstract class KotlinCompile @Inject constructor( } @get:Internal // To support compile avoidance (ClasspathSnapshotProperties.classpathSnapshot will be used as input instead) - abstract override val libraries: ConfigurableFileCollection - - @Deprecated( - "Replaced with 'libraries' input", - replaceWith = ReplaceWith("libraries") - ) - @Internal - fun getClasspath(): FileCollection = libraries - - @Deprecated( - "Replaced with 'libraries' input", - replaceWith = ReplaceWith("libraries") - ) - fun setClasspath(configuration: FileCollection) { - libraries.setFrom(configuration) - } + override abstract val classpath: ConfigurableFileCollection @get:Input abstract val useKotlinAbiSnapshot: Property @@ -1280,7 +1265,7 @@ abstract class Kotlin2JsCompile @Inject constructor( logger.info(USING_JS_IR_BACKEND_MESSAGE) } - val dependencies = libraries + val dependencies = classpath .filter { it.exists() && libraryFilter(it) } .map { it.canonicalPath }