One of the verification tests for start.spring.io is failing at the moment:
[ERROR] dependencyStarterConfigurationIsCorrect{Dependency, List, List, String}[9] Time elapsed: 2.183 s <<< ERROR!
java.lang.RuntimeException: org.eclipse.aether.resolution.DependencyResolutionException: Failed to collect dependencies at org.springframework.boot:spring-boot-starter-hateoas:pom:2.3.0.BUILD-SNAPSHOT
at io.spring.start.site.MetadataVerificationTests.dependencyStarterConfigurationIsCorrect(MetadataVerificationTests.java:78)
Caused by: org.eclipse.aether.resolution.DependencyResolutionException: Failed to collect dependencies at org.springframework.boot:spring-boot-starter-hateoas:pom:2.3.0.BUILD-SNAPSHOT
at io.spring.start.site.MetadataVerificationTests.dependencyStarterConfigurationIsCorrect(MetadataVerificationTests.java:78)
Caused by: org.eclipse.aether.collection.DependencyCollectionException: Failed to collect dependencies at org.springframework.boot:spring-boot-starter-hateoas:pom:2.3.0.BUILD-SNAPSHOT
at io.spring.start.site.MetadataVerificationTests.dependencyStarterConfigurationIsCorrect(MetadataVerificationTests.java:78)
Caused by: org.eclipse.aether.resolution.ArtifactDescriptorException: Failed to read artifact descriptor for org.springframework.boot:spring-boot-starter-hateoas:pom:2.3.0.BUILD-SNAPSHOT
at io.spring.start.site.MetadataVerificationTests.dependencyStarterConfigurationIsCorrect(MetadataVerificationTests.java:78)
Caused by: org.apache.maven.model.building.ModelBuildingException:
1 problem was encountered while building the effective model for org.springframework.boot:spring-boot-starter-hateoas:2.3.0.BUILD-SNAPSHOT
[ERROR] 'dependencies.dependency.version' for org.springframework.plugin:spring-plugin-core:jar is missing. @
at io.spring.start.site.MetadataVerificationTests.dependencyStarterConfigurationIsCorrect(MetadataVerificationTests.java:78)
This is due to spring-boot-starter-hateoas having a dependency on org.springframework.plugin:spring-plugin-core and there being no dependency management for it. The dependency shouldn't be there any more but this change was lost in the Gradle migration. We should:
- add something to the plugin for the starter projects that verifies that the runtime classpath can be resolved
- check that it fails when building the HATEOAS starter
- remove the dependency on
spring-plugin-core
Comment From: wilkinsona
I'm not sure if this is possible. Gradle takes the direct dependency on org.springframework.plugin:spring-plugin-core and the transitive dependency on org.springframework.plugin:spring-plugin-core:2.0.0.RELEASE and picks 2.0.0.RELEASE. There's no resolution failure. We might be able to check that we have a version constraint for it.
Comment From: wilkinsona
I've opened https://github.com/spring-projects/spring-boot/issues/19874 to fix the starter.
Comment From: gregturn
@wilkinsona Does this ticket need to be closed given the underlying issue was resolved?
Comment From: wilkinsona
No. We'd still like to add some verification to the build so that we catch this sort of problem automatically.