spierce7
08/04/2023, 4:21 AMspierce7
08/04/2023, 4:22 AMval productionJsBuildTask = tasks.getByName<KotlinWebpack>("jsBrowserProductionWebpack")
val jsFiles by configurations.creating {
isCanBeConsumed = false
isCanBeResolved = true
}
artifacts {
add("jsFiles", productionJsBuildTask.outputDirectory) {
builtBy(productionJsBuildTask)
}
}
Consuming Project:
val copyJsResources by tasks.register("copyJsResources", Copy::class) {
from(project(":producing-project").configurations.getByName("jsFiles").artifacts.files)
into("$projectDir/assets/")
}
tasks["installDist"].dependsOn(copyJsResources)
tasks["run"].dependsOn(copyJsResources)
ephemient
08/04/2023, 5:05 AMephemient
08/04/2023, 5:12 AMval jsFiles by configurations.creating {
isCanBeConsumed = false
isCanBeResolved = true
attributes { ... }
}
consumer
val jsFiles by configurations.creating {
isCanBeConsumed = true
isCanBeResolved = false
attributes { ... }
}
dependencies {
jsFiles(project(":producing-project"))
}
and you can choose whatever attributes you want as long as they are unambiguous, even
attributes {
attribute(Usage.USAGE_ATTRIBUTE, objects.named("js"))
}
would workVampire
08/04/2023, 6:59 AMephemient
08/04/2023, 7:19 AMproject(path:configuration:)
notation)ephemient
08/04/2023, 7:19 AMmbonnin
08/04/2023, 8:53 AMVampire
08/04/2023, 9:13 AMspierce7
08/04/2023, 6:45 PMephemient
08/05/2023, 12:14 AMfrom(cross-project configuration)
with from(local project configuration)
spierce7
08/05/2023, 12:18 AMval copyJsResources by tasks.register("copyJsResources", Copy::class) {
from(project(":producing-project").configurations.getByName("jsFiles").artifacts.files)
into("$projectDir/assets/")
}
It should be
val copyJsResources by tasks.register("copyJsResources", Copy::class) {
from(project.configurations.getByName("jsFiles").artifacts.files)
into("$projectDir/assets/")
}
?ephemient
08/05/2023, 12:19 AMval jsFiles by configurations.creating
then just from(jsFiles)
is fineephemient
08/05/2023, 12:20 AM.artifacts.files
in this usage eitherspierce7
08/05/2023, 12:26 AMspierce7
08/18/2023, 4:07 PM* What went wrong:
Execution failed for task ':image-gen-server:copyJsResources'.
> Could not resolve all files for configuration ':image-gen-server:jsFiles'.
> Could not resolve org.jetbrains.skiko:skiko:0.7.63.
Required by:
project :image-gen-server > project :image-gen-canvas > org.jetbrains.compose.foundation:foundation:1.4.3 > org.jetbrains.compose.foundation:foundation-desktop:1.4.3
project :image-gen-server > project :image-gen-canvas > org.jetbrains.compose.material:material:1.4.3 > org.jetbrains.compose.material:material-desktop:1.4.3 > org.jetbrains.compose.ui:ui:1.4.3 > org.jetbrains.compose.ui:ui-desktop:1.4.3
project :image-gen-server > project :image-gen-canvas > org.jetbrains.compose.material:material:1.4.3 > org.jetbrains.compose.material:material-desktop:1.4.3 > org.jetbrains.compose.ui:ui-text:1.4.3 > org.jetbrains.compose.ui:ui-text-desktop:1.4.3
project :image-gen-server > project :image-gen-canvas > org.jetbrains.compose.material:material:1.4.3 > org.jetbrains.compose.material:material-desktop:1.4.3 > org.jetbrains.compose.ui:ui:1.4.3 > org.jetbrains.compose.ui:ui-desktop:1.4.3 > org.jetbrains.compose.ui:ui-graphics:1.4.3 > org.jetbrains.comp
ose.ui:ui-graphics-desktop:1.4.3
> Cannot choose between the following variants of org.jetbrains.skiko:skiko:0.7.63:
- androidRuntimeElements-published
- awtRuntimeElements-published
All of them match the consumer attributes:
- Variant 'androidRuntimeElements-published' capability org.jetbrains.skiko:skiko:0.7.63:
- Unmatched attributes:
- Provides org.gradle.category 'library' but the consumer didn't ask for it
- Provides org.gradle.libraryelements 'jar' but the consumer didn't ask for it
- Provides org.gradle.status 'release' but the consumer didn't ask for it
- Provides org.gradle.usage 'java-runtime' but the consumer didn't ask for it
- Provides org.jetbrains.kotlin.platform.type 'jvm' but the consumer didn't ask for it
- Provides ui 'android' but the consumer didn't ask for it
- Variant 'awtRuntimeElements-published' capability org.jetbrains.skiko:skiko:0.7.63:
- Unmatched attributes:
- Provides org.gradle.category 'library' but the consumer didn't ask for it
- Provides org.gradle.libraryelements 'jar' but the consumer didn't ask for it
- Provides org.gradle.status 'release' but the consumer didn't ask for it
- Provides org.gradle.usage 'java-runtime' but the consumer didn't ask for it
- Provides org.jetbrains.kotlin.platform.type 'jvm' but the consumer didn't ask for it