-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dependency convergence errors with springwolf-kafka 0.12.1 #259
Comments
Additionally I have an absolutely weird exception in my integration tests now with springwolf-kafka version 0.12.1 which breaks the boot and is not happening with version 0.12.0:
I'm using OAuth 2.0 with JWT configured via
Seems like this code is not executed with springwolf-kafka version 0.12.0 🤔 Maybe some spring autoconfigure stuff prevents this? Like Spring MVC jumps in and disables Spring Webflux... But I couldn't find a related change in the changes, single somehow related change which I've found is this: Update: My guess was correct - it is some autoconfiguration thingy which jumps in with springwolf-kafka 0.12.1. Could fix this issue via explicitly specifying the web application type:
|
@maksymgendin The project is build with Gradle, so we don't use In any case, the warnings are not related with <dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-core</artifactId>
<version>0.11.1</version>
<exclusions>
<exclusion>
.....
</exclusion>
</exclusions>
</dependency> adding the bare minimum set of conflicting dependencies. In my project it works fine. Pay attention to |
I'm afraid I can't fix it with exclusions because this happens internally in |
@maksymgendin I will take a look to this issue the next days, but to me is unclear the reason you cannot apply a solution like <dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-core</artifactId>
<version>0.11.1</version>
<exclusions>
<exclusion>
<groupId>io.swagger.parser.v3</groupId>
<artifactId>swagger-parser-core</artifactId>
</exclusion>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
<exclusion>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclusion>
<exclusion>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
</exclusion>
<exclusion>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
</exclusion>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</exclusion>
<exclusion>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</exclusion>
</exclusions>
</dependency> That's exactly what I'm doing in one of my projects and everything works as expected. |
@maksymgendin Has your question been answered? @sam0r040 and me are trying resolve some of the swagger-inflector dependency issues with #279 Lets us know you have found a solution. We can document it and refer it, like #259 (comment) |
@timonback Not really. I still have the issue with dependency convergence and I can't use the proposal from @ctasada because the dependency convergence error happens in Here for example for the dependency
How should I solve this error? In my <dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-kafka</artifactId>
<scope>runtime</scope>
<version>${springwolf-kafka.version}</version>
</dependency> My current workaround is to pin all the conflicting artifact versions via |
I am not so familiar with maven. So I guess the
Based on your report, I see the following conflict:
Interestingly enough, I see that swagger-inflector is included in all of them. I expect them to get resolved after we move away from swagger-inflector, which is targeted in 2 releases. |
The block I posted is copy&paste for a real project and works properly. @maksymgendin can you provide some extra information? Why that approach is not working? Can you include some minor example on how do you use the library? |
@ctasada I just don't understand how it is supposed to work if I exclude transitive dependencies which are required for springwolf to work and I do not declare them anywhere else. So, currently in my project I'm including <dependencyManagement>
<dependencies>
<dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-kafka</artifactId>
<version>${springwolf-kafka.version}</version>
</dependency>
</dependencies>
</dependencyManagement> and like this: <dependencies>
<dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-kafka</artifactId>
</dependency>
</dependencies> If I now add your proposal from above, my <dependencyManagement>
<dependencies>
<dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-kafka</artifactId>
<version>${springwolf-kafka.version}</version>
<exclusions>
<exclusion>
<groupId>io.swagger.parser.v3</groupId>
<artifactId>swagger-parser-core</artifactId>
</exclusion>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
<exclusion>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclusion>
<exclusion>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
</exclusion>
<exclusion>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
</exclusion>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</exclusion>
<exclusion>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</dependencyManagement> Now my application of course crashes on runtime with several As I said - the dependency convergence error is inside the <dependencyManagement>
<dependencies>
<dependency>
<groupId>io.github.springwolf</groupId>
<artifactId>springwolf-kafka</artifactId>
<version>${springwolf-kafka.version}</version>
</dependency>
<!-- START: Dependency convergence management -->
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-annotations-jakarta</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-models-jakarta</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-core-jakarta</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<version>${jsr305.version}</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>${joda-time.version}</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
<!-- END: Dependency convergence management -->
</dependencies>
</dependencyManagement> There are several problems with doing it on my own, I would need to care about:
|
Heads up, |
Thank you for the report. The new version of Springwolf has been released including the removal of swagger-inflector. In case you still encounter the issue, feel free to re-open the issue. |
@timonback Many thanks, it works! |
Awesome! May you/we add your company to Springwolfs list of users? -> #342 |
Describe the bug
I would like to report some new dependency convergence errors I'm getting with latest version of
springwolf-kafka
. You're not verifying dependency convergence with Maven enforcer plugin, right? Not sure how to correctly handle this...Dependencies and versions used
springwolf-kafka
version0.12.1
The text was updated successfully, but these errors were encountered: