解决spring-boot 各版本包冲突兼容的方法

思路
        在微服务盛行的当下,spring boot 流行程度已经家喻户晓。但同时,随着spring boot 快速迭代,出现了很多版本,比如当前已经推出了2.2.x-SNAPSHOT/ ,不同版本的spring boot 对配套使用的spring 组件、第三方组件的版本是有要求。

在我们平时的开发中,需要集成某些spring boot功能时,偶尔会遇到包版本冲突,我们虽然知道版本冲突了,但却不知道该使用哪个版本?此时,如果我们可以根据自己使用的spring boot版本,然后去查询冲突包的对应版本,那么问题将会很快解决。

本着授人以鱼不如授人以渔的原则,经过一次排查错误,发现了spring boot其实在推出每个版本的时候,都会附加说明相关包的兼容版本。比如下面的地址:

https://docs.spring.io/spring-boot/docs/2.0.3.RELEASE/reference/htmlsingle/#appendix-dependency-versions

该地址展示的是spring boot 2.0.3-RELEASE 兼容的各个依赖包版本号。

拓展
        根据上面的地址,本人尝试按照规律查找其他spring boot版本的依赖包版本号,发现只要把上述url中的2.0.3-RELEASE 替换为对应的版本号,就可以查询对应依赖包版本号了。

比如按上面地址组装1.3.5-RELEASE 的各个依赖包版本号:

https://docs.spring.io/spring-boot/docs/1.3.5.RELEASE/reference/htmlsingle/#appendix-dependency-versions

最后,https://docs.spring.io/spring-boot/docs/  目录下是spring boot所有版本号的文档。

这个确实一个很牛逼的方法,基本搞定spring-boot版本冲突的问题

原博客:https://blog.csdn.net/li396864285/article/details/87693633

原文地址:https://www.cnblogs.com/Schrodinger6/p/11334338.html

时间: 2024-07-31 14:06:37

解决spring-boot 各版本包冲突兼容的方法的相关文章

Spring Boot 打war包并利用docBase指定根目录为打包的工程

指定根目录有两种方式 1:直接将打的war包名称定义为ROOT 2:利用docBase 比如笔者war包名为xibu.war,将该war包丢到/Users/archerlj/Library/apache-tomcat-8.5.8/webapps目录下即可.为了访问方便,我修改了tomcat安装目录下的conf文件下的server.xml文件: 在该文件最后的Host节点添加如下: <!-- path留空代表访问域名后面不需要带项目的名称 --> <Context path="&

Spring Boot 打 war 包的步骤

## Spring Boot 打 war 包的步骤 1. 添加 spring-boot-start-tomcat 的 provided 依赖 ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </

Spring Boot 启动 Struts 报冲突

错误信息如下: Caused by: com.opensymphony.xwork2.config.ConfigurationException: Bean type class com.opensymphony.xwork2.ObjectFactory with the name struts has already been loaded by bean - jar:file:/C:/Users/YuCheng/Documents/WorkDir/Ossez/cwiki-us/src/spr

Spring boot demo: spring boot生成war包

spring boot会默认生成Jar包,如果想要生成war包需要修改pom和启动类. 并且,测试的时候发现,部署在apache tomcat 7下会报包含的jar包错误,而在apache tomcat 8下能正常启动访问. 如果再tomcat 7下需要解决war包内的jar包冲突(参考:https://blog.csdn.net/qq_14853889/article/details/80026885) 以下步骤参考: https://docs.spring.io/spring-boot/do

Spring Boot 以 jar 包方式运行在后台

spring-boot jar 包方式启动: 首先,为了防止和常用的 Tomcat 8080 端口冲突,将 Spring-boot 项目的端口号设置为 9090. 具体方法:在 application.properties 文件里写 server.port=9090. 使用 maven 命令:clean package 打包. 放到服务器上一个合适的位置. 使用 Java -jar spring-boot01-1.0-SNAPSHOT.jar 命令,启动 jar 包. 然后,在浏览器输入 htt

【转】Spring boot 打成jar包问题总结

http://www.cnblogs.com/xingzc/p/5972488.html 1.Unable to find a single main class from the following candidates 1.1.问题描述 maven build时出现以下错误提示日志: [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.3.5.RELEASE:repackage

Spring Boot导出jar包发布

一:事由 现在的项目组开发项目使用的是Spring Boot的技术,开发的时候是直接通过一个入口主函数来启动项目的.如果将项目交给客户,怎样才能正确的发布运行呢?百度了一下有关的知识,大概了解到是通过导出jar包,直接运行来实现的.不过从网上查阅的资料,都不太理想,于是自己和另外一个同事就倒腾开了.倒腾了好一会,最终找到了一个比较简单有效的方法来实现,现在分享如下. 二:从Eclipse中导出对应的可运行的jar包(这一步是最为关键的) 1:选中对应的java项目——右键——导出 2:选择导出j

spring boot compiler 版本实践

一. Maven用户可以继承spring-boot-starter-parent项目来获取合适的默认设置. 该父项目提供以下特性: 1.默认编译级别为Java 1.6,若要编译更高版本,则: <properties> <java.version>1.8</java.version> </properties> 或使用maven-compiler-plugin 2.源码编码为UTF-8 3.一个依赖管理节点,允许你省略普通依赖的 <version>

spring boot 打jar包,获取resource路径下的文件

前言:最近在spring boot项目静态类中获取resource路径下文件,在idea中启动都可以获取,但是打包后变成了jar包 就无法获取到.我想到了两种方法,一种是根据http访问静态资源比如 localhost:9080/static/template/xxx.ftl文件.另外一种是根据流获取到文件,然后拷贝到新的文件夹下面.下面说的就是第二种方式的代码 public class DocUtil { //此路径是其他方法进行调用,且只需要加载一次private static String