1

我正在尝试编译Intellij IDEA使用Scala 2.10和需要编译的项目Java 7

我正在使用jenv从命令行编译的工具(我已经安装了它的插件Intellij IDEA以防万一)并且在我使用Java 7并使用此行jenv编译Maven项目之后:

jenv exec mvn clean install

一切都很完美。

但是,当我使用Intellij IDEA插件时Scala,编译失败。我Java 1.7在我发现的任何地方都设置了设置,in Scala Compiler Server, in Java Compiler,项目配置等。失败堆栈跟踪如下:

Error:scalac: Error: org/jetbrains/jps/incremental/messages/BuildMessage$Kind
java.lang.UnsupportedClassVersionError: org/jetbrains/jps/incremental/messages/BuildMessage$Kind
    at org.jetbrains.jps.incremental.scala.local.AbstractCompiler$ClientReporter.log(AbstractCompiler.scala:92)
    at xsbt.DelegatingReporter.info0(DelegatingReporter.scala:39)
    at scala.tools.nsc.reporters.Reporter$$anonfun$error$1.apply$mcV$sp(Reporter.scala:70)
    at scala.tools.nsc.reporters.Reporter$$anonfun$error$1.apply(Reporter.scala:70)
    at scala.tools.nsc.reporters.Reporter$$anonfun$error$1.apply(Reporter.scala:70)
    at scala.tools.nsc.reporters.Reporter.withoutTruncating(Reporter.scala:42)
    at scala.tools.nsc.reporters.Reporter.error(Reporter.scala:70)
    at scala.tools.nsc.Global.globalError(Global.scala:228)
    at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1564)
    at scala.tools.nsc.Global$Run.compileSources(Global.scala:1552)
    at scala.tools.nsc.Global$Run.compile(Global.scala:1661)
    at xsbt.CachedCompiler0.run(CompilerInterface.scala:115)
    at xsbt.CachedCompiler0.run(CompilerInterface.scala:94)
    at xsbt.CompilerInterface.run(CompilerInterface.scala:22)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at sbt.compiler.AnalyzingCompiler.call(AnalyzingCompiler.scala:101)
    at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:47)
    at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:41)
    at org.jetbrains.jps.incremental.scala.local.IdeaIncrementalCompiler.compile(IdeaIncrementalCompiler.scala:32)
    at org.jetbrains.jps.incremental.scala.local.LocalServer.compile(LocalServer.scala:26)
    at org.jetbrains.jps.incremental.scala.remote.Main$.make(Main.scala:68)
    at org.jetbrains.jps.incremental.scala.remote.Main$.nailMain(Main.scala:25)
    at org.jetbrains.jps.incremental.scala.remote.Main.nailMain(Main.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.martiansoftware.nailgun.NGSession.run(NGSession.java:319)

据我了解,这意味着编译后的代码 java 版本与尝试运行它的版本不匹配。我还看到JetBrains.

那么,有什么方法可以构建这个项目Intellij吗?因为我坚持这一点,无法继续。

4

2 回答 2

1

这个问题似乎与Intellij IDEA 2017.1它本身有关,错误已经存在。我尝试下载版本2016.6.3,它在那里运行良好,没有任何问题。

于 2017-04-19T16:00:08.963 回答
0

在阅读了 Yuriy 链接到的错误的新评论后,我相信现在可以在不降级的情况下解决这个问题。

关闭外部 Scala 编译服务器对我有用。可能需要升级 Scala 插件版本。

要关闭外部 Scala 编译服务器,请转到File-> Settings...-> Languages & Frameworks->Scala Compile Server并取消选中“为 Scala 使用外部编译服务器”选项

unckeck 为 scala 使用外部编译服务器

当我使用插件的 Nightly 选项更新 Scala 插件以构建 2017.2.675 然后重新启动 IntelliJ 时,会出现此选项。

要更新插件,请转到File-> Settings...-> Languages & Frameworks-> Scala-> Updates,从下拉列表中选择 Nightly,单击“检查更新”,安装并重新启动 IntelliJ。

在此处输入图像描述

于 2017-09-25T16:49:11.743 回答