Guilherme Delgado
06/24/2022, 11:50 AMversionCatalogs {
create("libs") {
from(files("../gradle/libraries.versions.toml"))
}
}
Both in my *build-logic/*`settings.gradle` and *project/*`settings.gradle` other wise I can’t have access to my catalog... I have no idea why because I’ve created a simple project from 0 with minimal setup and it works perfectly (just like in google sample settings1 and settings2).
Another issue I’m facing is with the .toml
file name. As you can see it’s called libraries and not libs because if it is libs it will throw the “already existis a catalog with that name” error (again, working as expected in the sample created from scratch).
I’m a bit lost here, things are working but feeling hacky. Any hint?
Thanks again 🙏Javier
06/24/2022, 12:46 PMlibs.version.toml
is added by defaultbuildSrc
you would need to add those lines too, at the end I think the only settings which is able to get that file by default is the root one because it looks for gradle/libs.versions.toml
. So if you want that behavior in the rest of projects that have a settings file, you would need to duplicate that file to be in a gradle/libs.version.toml
respect to that settings file, which is not a good approach.Guilherme Delgado
06/24/2022, 12:52 PMthis means i just need to create the file and skip the gradle versionCatalogs setup? In the google sample they manage to make it work only by using theis added by defaultlibs.version.toml
versionCatalogs
setup in the *build-logic/*`settings.gradle` and it’s accessible in all the project modules. I’ve achieved the same from the quick sample i’ve created from 0.
I’m facing this problem in a project that i’ve migrated to this setup (buildSrc is removed at this point), dunno if could be some caches or strange ghost configurations… 🤔Javier
06/24/2022, 2:09 PMgradle/libs.versions.toml
so you have to indicate it manually with ../gradle/libs.versions.toml
Guilherme Delgado
06/24/2022, 2:21 PMsettings.gradle
that makes sense, but why do i need to add that also to the project settings? since it has includeBuild("build-logic")
shouldn’t be smart to get it from it? 🤔@file:Suppress("UnstableApiUsage")
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
}
versionCatalogs {
create("libs") {
from(files("../gradle/libraries.versions.toml"))
}
}
}
include(":conventions")
this makes total sense ^
I’m struggling with this:
project settings.gradle
pluginManagement {
includeBuild("build-logic")
repositories {
google()
gradlePluginPortal()
mavenCentral()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
//if i don't add this it can't find "libs"
versionCatalogs {
create("libs") {
from(files("./gradle/libraries.versions.toml"))
}
}
}
Javier
06/24/2022, 2:30 PMGuilherme Delgado
06/24/2022, 2:40 PMorg.gradle.internal.exceptions.LocationAwareException:
upon commenting the versionCatalogs
from my project settings.gradle
😞Javier
06/24/2022, 2:41 PMGuilherme Delgado
06/24/2022, 2:42 PMCaused by: ScriptCompilationException(errors=[ScriptCompilationError(message=Unresolved reference: libs, location=/Users/guilhermedelgado/.gradle/.tmp/gradle-kotlin-dsl-5296176479961038049.tmp/build.gradle.kts (7:19)), ScriptCompilationError(message=Unresolved reference: libs, location=/Users/guilhermedelgado/.gradle/.tmp/gradle-kotlin-dsl-5296176479961038049.tmp/build.gradle.kts (8:19)), ScriptCompilationError(message=Unresolved reference: libs, location=/Users/guilhermedelgado/.gradle/.tmp/gradle-kotlin-dsl-5296176479961038049.tmp/build.gradle.kts (9:19)), ScriptCompilationError(message=Unresolved reference: libs, location=/Users/guilhermedelgado/.gradle/.tmp/gradle-kotlin-dsl-5296176479961038049.tmp/build.gradle.kts (10:19)), ScriptCompilationError(message=Unresolved reference: libs, location=/Users/guilhermedelgado/.gradle/.tmp/gradle-kotlin-dsl-5296176479961038049.tmp/build.gradle.kts (11:19))])
at org.gradle.kotlin.dsl.support.KotlinCompilerKt.compileKotlinScriptModuleTo(KotlinCompiler.kt:187)
at org.gradle.kotlin.dsl.support.KotlinCompilerKt.compileKotlinScriptToDirectory(KotlinCompiler.kt:148)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$compileScript$1.invoke(ResidualProgramCompiler.kt:708)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$compileScript$1.invoke(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.provider.StandardKotlinScriptEvaluator$InterpreterHost$runCompileBuildOperation$1.call(KotlinScriptEvaluator.kt:162)
at org.gradle.kotlin.dsl.provider.StandardKotlinScriptEvaluator$InterpreterHost$runCompileBuildOperation$1.call(KotlinScriptEvaluator.kt:159)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204)
at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66)
at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157)
at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59)
at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73)
at org.gradle.kotlin.dsl.provider.StandardKotlinScriptEvaluator$InterpreterHost.runCompileBuildOperation(KotlinScriptEvaluator.kt:159)
at org.gradle.kotlin.dsl.execution.Interpreter$compile$1$1$1$1.invoke(Interpreter.kt:326)
at org.gradle.kotlin.dsl.execution.Interpreter$compile$1$1$1$1.invoke(Interpreter.kt:72)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.compileScript-C5AE47M(ResidualProgramCompiler.kt:707)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.compileStage1-EfyMToc(ResidualProgramCompiler.kt:690)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.compileStage1-EfyMToc$default(ResidualProgramCompiler.kt:686)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.emitEval(ResidualProgramCompiler.kt:215)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.emit(ResidualProgramCompiler.kt:190)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.emit(ResidualProgramCompiler.kt:182)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.access$emit(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$emitStaticProgram$1$1.invoke(ResidualProgramCompiler.kt:111)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$emitStaticProgram$1$1.invoke(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$overrideExecute$1.invoke(ResidualProgramCompiler.kt:534)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$overrideExecute$1.invoke(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.support.bytecode.AsmExtensionsKt.method(AsmExtensions.kt:131)
at org.gradle.kotlin.dsl.support.bytecode.AsmExtensionsKt.publicMethod(AsmExtensions.kt:114)
at org.gradle.kotlin.dsl.support.bytecode.AsmExtensionsKt.publicMethod$default(AsmExtensions.kt:111)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.overrideExecute(ResidualProgramCompiler.kt:533)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.access$overrideExecute(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$emitStaticProgram$1.invoke(ResidualProgramCompiler.kt:110)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$emitStaticProgram$1.invoke(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$program$3.invoke(ResidualProgramCompiler.kt:668)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler$program$3.invoke(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.support.bytecode.AsmExtensionsKt.publicClass-7y5yvvE(AsmExtensions.kt:39)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.program-5oOsWEo(ResidualProgramCompiler.kt:666)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.access$program-5oOsWEo(ResidualProgramCompiler.kt:85)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.emitStaticProgram(ResidualProgramCompiler.kt:796)
at org.gradle.kotlin.dsl.execution.ResidualProgramCompiler.compile(ResidualProgramCompiler.kt:101)
at org.gradle.kotlin.dsl.execution.Interpreter$compile$1.invoke(Interpreter.kt:330)
Javier
06/26/2022, 2:41 PMGuilherme Delgado
06/26/2022, 10:28 PMsettings.gradle
versionCatalogs you’ll get the same outputorg.gradle.internal.exceptions.LocationAwareException: Build file '…/sample/build.gradle.kts' line: 7
Script compilation errors:
Line 07: classpath(libs.gradle.android.tools)
^ Unresolved reference: libs
…
Javier
06/27/2022, 3:35 PMGuilherme Delgado
06/27/2022, 3:36 PMSettings file '/Users/…/build-logic/settings.gradle.kts' line: 9
Using dependency catalogs requires the activation of the matching feature preview.
See the documentation at <https://docs.gradle.org/7.1/userguide/platforms.html#sub:central-declaration-of-dependencies>
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
but everything works fine 🤷Javier
06/27/2022, 4:37 PMGuilherme Delgado
06/27/2022, 4:38 PMwrapper 7.4.2-all.zip
android tools = "7.2.1"
Javier
06/27/2022, 4:41 PMGuilherme Delgado
06/27/2022, 4:41 PMJavier
06/27/2022, 4:42 PM