当前位置: 首页 > 知识库问答 >
问题:

尝试使用Java6构建时,Spring-boot“unsupported major.minor version 51.0”

宗波涛
2023-03-14

我和我的朋友在Java7上做Spring-boot项目。工作很好。但是,他们决定将其放在Java6服务器上。所以我们必须改变它。在我朋友的笔记本电脑上运行良好,但我的却不行。我不知道为什么会变成这样。

但当我需要它成为jar时(我用maven build/maven clean):

以下是完整的日志:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : 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.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:401)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:254)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
at org.codehaus.plexus.classworlds.launcher.Launcher.getMainClass(Launcher.java:144)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:266)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)

为什么不支持Major.Minor版本51.0

java.lang.UnsupportedClassVersionError不支持Major.Minor版本51.0

java.lang.UnsupportedClassVersionError:javax/Servlet/ServletException:不支持Major.Minor版本51.0

Java 6不支持Major.Minor版本51.0

但错误仍然存在。任何建议都将不胜感激。

共有1个答案

奚正谊
2023-03-14

原来是,我的朋友根本没有换Java编译器。它们只是更改pom.xml上的Java版本:

并且在我们的Java6服务器上运行良好。

因此,除了使用jens和abarisone注释外,Spring-boot和/或它的依赖项还需要Java7或更多,但当我们将目标设置为Java6时(使用Java7)编译它时,它会编译,并且令人惊讶地在Java6机器上运行。有人能解释为什么吗?只是运气还是什么?

 类似资料:
  • 下午好,我正在尝试生成一个与Java spring boot的Rest服务,但当尝试执行jar时,我得到以下错误,这让我头疼,我不知道具体是什么: java.lang.nosuchmethoderror:org.springframework.data.repository.configurationrepositoryconfigurationsource.(log/springframewor

  • 我一直在遵循“Django by example”的教程,该教程介绍了Solr和Haystack,但遇到了一个问题。我已在settings.py中对已安装的_应用程序进行了必要的更改,并添加了以下内容: 然后我就跑 我得到这个错误 这是我的search_index.py文件 当我运行django shell时,我可以很好地导入haystack,但当我运行以下命令时: 进入第二行后,我得到了完全相同

  • 我的Spring Boot应用程序不是使用mvn clean install/package构建的,而是使用设置了配置的play图标构建的。我需要部署它,所以我需要让这个JAR运行。 以下是我运行任何mvn命令时爬起来的日志: 这是我的项目的pom.xml,我需要在这里添加入门类吗? 提前感谢。

  • 因此,我尝试使用存储在Cosul中的键/值来覆盖Application.Properties中的值。我试了两件事。 1)使用Spring Cloud Consul config.https://Cloud.Spring.io/spring-cloud-consual/reference/html/#spring-cloud-consual-config 如果我的application.proper

  • 我希望能够运行SpringBoot:build映像,并让它从本地Artifactory服务器而不是docker中提取paketobuildpack。木卫一。我希望插件使用docker配置文件作为我的凭证,而不是在pom文件中硬编码。 这个作品: 当我在没有上面的docker块的情况下运行时,我得到以下错误: 我的docker/config。json具有以下配置: 我可以成功地运行docker bu

  • 我在这里得到的例外情况是: 通过字段“jms template”表示的不满足的依赖关系;嵌套异常为org.springframework.beans.factory.beanCreationException:创建类路径资源[com/investmentbank/equityfeedsprocessingremission/config/config.class]中定义的名为“JMS Templa