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.