加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala sbt run – “不支持的major.minor版本52.0”

发布时间:2020-12-16 09:29:38 所属栏目:安全 来源:网络整理
导读:当我使用IntelliJ时,事情运行没有任何问题,但是当我尝试在命令行中编译和运行我的Scala代码(使用sbt run)时,会弹出以下错误消息。 [error] (run-main-0) java.lang.UnsupportedClassVersionError: akka/event/LogSource : Unsupported major.minor versio
当我使用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,所以如果有人能就我应该研究的内容提供一些建议,我将不胜感激。

解决方法

事实证明,JRE版本存在不匹配。在IntelliJ项目设置中,项目SDK设置为Java 1.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命运就没有任何问题。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读