Comment From: ValentinBossi

hi @wilkinsona json-smart is in spring boot version 3.2.4 scoped as "compile" when i do mvn dependency:tree. it should be "test" right?

Comment From: wilkinsona

Spring Boot should only contribute it to your project's classpath through spring-boot-starter-test which you should declare in test scope.

This isn't really related to this upgrade and, as mentioned in the guidelines for contributing, we prefer to use GitHub issues only for bugs and enhancements. If you have any further questions, please follow up on Stack Overflow.

Comment From: ValentinBossi

sorry i mean spring-boot-starter-test. see:

[INFO] +- org.springframework.boot:spring-boot-starter-test:jar:3.2.4:test
[INFO] |  +- org.springframework.boot:spring-boot-test:jar:3.2.4:test
[INFO] |  +- org.springframework.boot:spring-boot-test-autoconfigure:jar:3.2.4:test
[INFO] |  +- com.jayway.jsonpath:json-path:jar:2.9.0:test
[INFO] |  +- jakarta.xml.bind:jakarta.xml.bind-api:jar:4.0.2:compile
[INFO] |  |  \- jakarta.activation:jakarta.activation-api:jar:2.1.3:compile
[INFO] |  +- net.minidev:json-smart:jar:2.5.0:compile
[INFO] |  |  \- net.minidev:accessors-smart:jar:2.5.0:compile
[INFO] |  |     \- org.ow2.asm:asm:jar:9.3:compile
[INFO] |  +- org.assertj:assertj-core:jar:3.24.2:test
[INFO] |  |  \- net.bytebuddy:byte-buddy:jar:1.14.12:test
[INFO] |  +- org.awaitility:awaitility:jar:4.2.0:test
[INFO] |  +- org.hamcrest:hamcrest:jar:2.2:test

Comment From: wilkinsona

It will be in test scope by default. Here's the typical output:

[INFO] \- org.springframework.boot:spring-boot-starter-test:jar:3.2.4:test
[INFO]    +- org.springframework.boot:spring-boot-test:jar:3.2.4:test
[INFO]    +- org.springframework.boot:spring-boot-test-autoconfigure:jar:3.2.4:test
[INFO]    +- com.jayway.jsonpath:json-path:jar:2.9.0:test
[INFO]    |  \- org.slf4j:slf4j-api:jar:2.0.12:compile
[INFO]    +- jakarta.xml.bind:jakarta.xml.bind-api:jar:4.0.2:test
[INFO]    |  \- jakarta.activation:jakarta.activation-api:jar:2.1.3:test
[INFO]    +- net.minidev:json-smart:jar:2.5.0:test
[INFO]    |  \- net.minidev:accessors-smart:jar:2.5.0:test
[INFO]    |     \- org.ow2.asm:asm:jar:9.3:test

Something else will be pulling it into compile scope. org.slf4j:slf4j-api:jar:2.0.12:compile is an example of this. It happens because it's also a dependency on spring-boot-starter that is in compile scope.

As I said above, please follow up on Stack Overflow. This is a Maven question and doesn't belong here.