org.springframework.boot.SpringApplication 与 spring-core 3.2.5.RELEASE

Posted

技术标签:

【中文标题】org.springframework.boot.SpringApplication 与 spring-core 3.2.5.RELEASE【英文标题】:org.springframework.boot.SpringApplication with spring-core 3.2.5.RELEASE 【发布时间】:2016-04-04 12:08:17 【问题描述】:

我将使用spring 3hibernate 3 创建简单的休息服务。由于基于 hibernate 3 的遗留业务组件,我没有机会使用更高版本的 spring。

为此,我尝试使用SpringApplication.run,但收到以下异常:

Exception in thread "main" java.lang.IllegalAccessError: tried to access method org.springframework.core.io.support.SpringFactoriesLoader.loadFactoryNames

是否可以将spring-boot-maven-plugin 与旧的spring 版本一起使用?很高兴知道这个方向的任何替代方法。

【问题讨论】:

【参考方案1】:

Spring Boot(以及所有相关工具,例如 maven 插件)需要 Spring v4 及更高版本。请看官方文档here。

默认情况下,Spring Boot 1.3.2.BUILD-SNAPSHOT 需要 Java 7 和 Spring Framework 4.1.5 或更高版本。

【讨论】:

感谢 javapapo 的快速回答!你知道任何避免弹簧靴的替代方法吗? 这真的取决于你想做什么。您可以迁移到 Spring Boot / Spring 4 组合(无论这对您的代码库意味着什么),或者您尝试在您的版本 (3) 上利用现有的 Spring 模块并开发您的解决方案。我想使用 Spring MVC (Spring REST) 将是一个潜在的解决方案,请参阅here

以上是关于org.springframework.boot.SpringApplication 与 spring-core 3.2.5.RELEASE的主要内容,如果未能解决你的问题,请参考以下文章

插件 [id: 'org.springframework.boot', version: '2.0.2.RELEASE'] 未找到

Spring Boot 应用程序无法解析 org.springframework.boot 包

org.springframework.boot.web.support 不存在

将 org.springframework.boot 加载到项目中的 Gradle 插件

Plugin ‘org.springframework.boot:spring-boot-maven-plugin:‘ not found

java.lang.ClassNotFoundException:org.springframework.boot.SpringApplication Maven