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

Scala sbt运行-“不支持的主版本。次版本52.0”

洪开济
2023-03-14

当我使用IntelliJ时,一切运行都没有问题,但是当我尝试在命令行中编译和运行Scala代码时(使用sbt run),会弹出以下错误消息。

[error] (run-main-0) java.lang.UnsupportedClassVersionError: akka/event/LogSource : Unsupported major.minor version 52.0
java.lang.UnsupportedClassVersionError: akka/event/LogSource : Unsupported major.minor version 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Class.java:2625)
        at java.lang.Class.getMethod0(Class.java:2866)
        at java.lang.Class.getMethod(Class.java:1676)

我使用的是Ubuntu 14.04 LTS。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.5 LTS
Release:        14.04
Codename:       trusty

我的Scala版本是2.9.2。

$ scalac -version
Scala compiler version 2.9.2 -- Copyright 2002-2011, LAMP/EPFL

几周前我才刚刚开始学习Scala,所以如果有人能就我应该研究的内容提供一些建议,我将不胜感激。

共有3个答案

杨良平
2023-03-14

更新到正确的java版本并重新编译。它应该很好用

宗政兴发
2023-03-14

我正在使用Mac电脑,并试图通过一个简单的Scala教程来学习Scala。我在尝试运行应用程序时遇到此错误。

原因:我安装的java版本是8。但在我的终端上,我使用的版本是7。

修复:我更新了java版本到最新版本,然后它的工作。

糜博远
2023-03-14

结果发现JRE版本不匹配。在IntelliJ项目设置中,项目SDK被设置为Java1.8(在我的本地机器上),而JRE 1.7被安装在Ubuntu系统上(一个EC2实例)。

在Ubuntu 14.04中,OpenJDK 1.8默认不可用,因此必须手动添加以下存储库。然后就可以安装OpenJDK了。

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jre

通过运行以下命令,可以更改系统中的默认Java版本。

sudo update-alternatives --config java

一旦我安装了openjdk-8-jre并在系统中调整了默认的Java版本,sbt run命令运行时没有任何问题。

 类似资料:
  • 我在启动install Launcher时遇到这个错误。$JAVA_HOME/bin/java-jar rundeck-launcher-2.8.2.jar 线程“main”java.lang.UnsupportedClassVersionError中出现异常:com/dtoLabs/rundeck/expandrunserver:不支持Major.Minor版本52.0 $JAVA_HOME/b

  • 我正在使用Maven覆盖安装部署Jasig CAS4.0.0。我创建了自定义类,当部署它时,在cas.log中出现了以下错误: null maven-compiler-plugin:3.2 maven.compiler.source:1.8 maven.compiler.target:1.8 感谢任何帮助。

  • 图片: 问题可能是什么?

  • 问题内容: 我无法将Java应用程序作为HTML中的Web小程序启动(我使用的是HTML4.01,我知道它在html5中不起作用)。它返回的错误消息是: java:不支持的major.minor版本52.0 我尝试降级Java JRE / JDK / SDK,但仍然收到相同的错误消息。我正在使用的Java当前版本是1.8.0_05。 问题答案: 使用Java版本1.7或更低版​​本执行代码时,您的

  • 我试图运行示例https://github.com/thymeleaf/thymeleafexamples-springmail 有以下错误。不确定什么是不可限量的版本?我附上了pom.xml详细信息。想知道这是不是我的java版本与maven或Tomcat不兼容造成的?

  • 我有在JDK1.8上编译的代码。我创建了war文件,并在运行JRE1.8的Ubuntu服务器中的Tomcat8上部署了它。我在打开主页面的时候出现了这个错误: java.lang.unsupportedClassVersionError:com/dash/io/web/bind/homectrl:Unsupported major.minor版本52.0