【问题标题】:Which Java version is supported by Spring Cloud?Spring Cloud 支持哪个 Java 版本?
【发布时间】:2015-09-01 22:10:57
【问题描述】:

http://start.spring.io (Initializr) 下,您可以为 Java 6 创建 Spring Cloud 应用程序。 Spring Boot 参考文档仍然提示支持 Java 6:http://docs.spring.io/spring-boot/docs/1.2.2.RELEASE/reference/htmlsingle/#howto-use-java-6 我可以使用 Java 6 编译生成的“Initializr”项目,但是当我尝试在 Java 6 上运行应用程序时,我得到以下 UnsupportedClassVersionError:

java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.IllegalArgumentException: Cannot instantiate interface org.springframework.context.ApplicationListener : org.springframework.cloud.bootstrap.BootstrapApplicationListener
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:381)
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:358)
    at org.springframework.boot.SpringApplication.initialize(SpringApplication.java:231)
    at org.springframework.boot.SpringApplication.<init>(SpringApplication.java:206)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:957)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:946)
    at com.daimler.daivb.services.common.configserver.ConfigserverApplication.main(ConfigserverApplication.java:16)
    ... 6 more
Caused by: java.lang.UnsupportedClassVersionError: org/springframework/cloud/bootstrap/BootstrapApplicationListener : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at org.springframework.boot.loader.LaunchedURLClassLoader.doLoadClass(LaunchedURLClassLoader.java:163)
    at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:136)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.springframework.util.ClassUtils.forName(ClassUtils.java:249)
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:374)
    ... 12 more

所以问题是,spring-cloud-context-1.0.1.RELEASE.jar:/org/springframework/cloud/bootstrap/BootstrapApplicationListener.class 库已经用Java 7和目标版本编译是一个错误吗Java 7?

【问题讨论】:

    标签: spring spring-boot spring-cloud


    【解决方案1】:

    Spring Cloud 需要 Java 7(除了一个模块需要 Java 8)。 Spring Cloud Commons 自述文件将使用该信息进行更新。我将看到有关在选择 Spring Cloud 依赖项时使用 Initializr 记录一个不允许使用 java 6 的问题。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-11
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 2021-03-26
    • 1970-01-01
    • 2020-01-05
    相关资源
    最近更新 更多