Spring-boot: Web Services starter depends on a missing mimepull version

Created on 22 Oct 2018  路  7Comments  路  Source: spring-projects/spring-boot

Hi everyone,

The context

We tried to migrate one of our projects from Spring Boot 2.1.0.M4 to 2.1.0.RC1 and encountered an error while building. The project depends on spring-boot-starter-web-services.

The error

While building :

* What went wrong:
Could not resolve all files for configuration ':compileClasspath'.
> Could not find org.jvnet.mimepull:mimepull:1.9.8.
  Required by:
      project : > org.springframework.boot:spring-boot-starter-web-services:2.1.0.RC1 > com.sun.xml.messaging.saaj:saaj-impl:1.5.0

Our analysis

It seems like while the version 1.5.0 on the archived Java EE repository (the one used in the starter) depends on mimepull 1.9.8, mimepull isn't available on repositories like Maven Central.

While migrating to the new EE4J repository, it seems like saaj has been silently upgraded to 1.5.1 and its dependency to mimepull has been rolled back to 1.9.7.

This should make the application build again.

bug

Most helpful comment

@Crow-EH I've added a managed dependency to mimepull 1.9.10 which is in Maven Central. This should mean the transitive dependency gets replaced with the version that can be downloaded.

All 7 comments

@Crow-EH Thanks for the analysis. Are you using Java 11 by any chance?

Hi @philwebb,

Yes we are.
In fact we migrated to 2.1.0 for Java 11 and it has been a breeze until we encountered this issue.

But the problem persists even with Java 8.
A simple project from Spring Boot initializr + Starter Web Services dependency is enough to reproduce the bug.

There's also another problem (the reason I didn't directly submitted a PR) : saaj-impl 1.5.1 doesn't seem to be available online yet either :cry:

@Crow-EH I've added a managed dependency to mimepull 1.9.10 which is in Maven Central. This should mean the transitive dependency gets replaced with the version that can be downloaded.

@philwebb How do I get the fixed version? 2.1.0.RELEASE still looks for mimepull 1.9.8.

@patrickmann we don't use the issue tracker for questions. Spring Boot 2.1.0 has dependency management for 1.9.19. If that doesn't work for your build, please review the documentation. If you have further questions, please ask on StackOverflow or join the community on Gitter.

Could not find org.jvnet.mimepull:mimepull:1.9.8.
Searched in the following locations:
- file:/C:/Users/blabla/.m2/repository/org/jvnet/mimepull/mimepull/1.9.8/mimepull-1.9.8.pom
- file:/C:/Users/blabla/.m2/repository/org/jvnet/mimepull/mimepull/1.9.8/mimepull-1.9.8.jar
- https://repo.spring.io/libs-release/org/jvnet/mimepull/mimepull/1.9.8/mimepull-1.9.8.pom
- https://repo.spring.io/libs-release/org/jvnet/mimepull/mimepull/1.9.8/mimepull-1.9.8.jar
- http://repo.maven.apache.org/maven2/org/jvnet/mimepull/mimepull/1.9.8/mimepull-1.9.8.pom
- http://repo.maven.apache.org/maven2/org/jvnet/mimepull/mimepull/1.9.8/mimepull-1.9.8.jar
Required by:
project :blabla-client > org.springframework.boot:spring-boot-starter-web-services:2.1.2.RELEASE > com.sun.xml.messaging.saaj:saaj-impl:1.5.0

Broken again in 2.1.2.RELEASE

We still manage the version to be 1.9.10:

https://github.com/spring-projects/spring-boot/blob/v2.1.2.RELEASE/spring-boot-project/spring-boot-dependencies/pom.xml#L134

For that to help, you have to use Spring Boot鈥檚 dependency management so I suspect that you are not doing so. If you are, and you would like us to help to diagnose the problem, please open a new issue with a minimal sample that reproduces the behaviour you have described.

Was this page helpful?
0 / 5 - 0 ratings