spring-security-samples icon indicating copy to clipboard operation
spring-security-samples copied to clipboard

Problem with libs.version.toml

Open mghmay opened this issue 1 year ago • 2 comments
trafficstars

All I'm trying to do is run the sample and see it working. When I open up servlet/spring-boot/java/oauth2/login and try to run it I get an error stating:

java.lang.RuntimeException: org.gradle.api.InvalidUserDataException: Invalid TOML catalog definition:
  - Problem: In version catalog libs, parsing failed with 1 error.
    
    Reason: In file '...\IdeaProjects\spring-security-samples\servlet\spring-boot\java\oauth2\login\gradle\libs.versions.toml' at line 1, column 1: Unexpected '.', expected a-z, A-Z, 0-9, ', ", a table key, a newline, or end-of-input.

When I open up the libs.versions.toml I can clearly see the problem: ../../../../../../gradle/libs.versions.toml This isn't formatted correctly but I have no idea what this libs.versions.toml file actually does. Please help new users by formatting this correctly.

mghmay avatar Aug 11 '24 10:08 mghmay

I'm having the same issue. @mghmay I'm guessing you're also running on Windows as well? I imagine that file is supposed to be a Linux/UNIX soft link (ln -s) to reference the "root" configuration for all the samples.

As a work around, I've copied the gradle/libs.versions.toml into the various samples I want to run and it seems to work okay.

bkuntzelman avatar Sep 17 '24 20:09 bkuntzelman

Even on Github's navigation screen, it really looks like a symbolic link icon.

image

In my opinion, it would be beneficial to specify the relative path of the toml file in the "settings.gradle" file of each sub-example project. This approach would ensure compatibility with OS environments other than Linux/UNIX, where symbolic links are not available.

Importing a catalog from a TOML file

  • https://docs.gradle.org/current/userguide/platforms.html#ex-sharing-the-dependency-catalog-with-buildsrc
dependencyResolutionManagement {
    versionCatalogs {
        libs {
            from(files("../../../gradle/libs.versions.toml"))
        }
    }
}

fp024 avatar Oct 23 '24 00:10 fp024