我正在尝试按照
中的说明操作https://confluence.jetbrains.com/display/SCA/Setting+up+Scala+plugin+project+in+IntelliJ+IDEA
我正在使用Idea 14.1.14。 已经下载了源码并下载了想法。 导入项目后,将Project SDK设置为1.7。
不确定以上是否足够信息继续;但在make项目中我得到以下错误;是否有可能猜出我的错误?
Error:scalac: error while loading Object, Missing dependency 'object scala in compiler mirror', required by /usr/lib/jvm/java-7-oracle/jre/lib/rt.jar(java/lang/Object.class)
Error:scalac: Error: object scala in compiler mirror not found.
scala.reflect.internal.MissingRequirementError: object scala in compiler mirror not found.
at scala.reflect.internal.MissingRequirementError$.signal(MissingRequirementError.scala:17)
at scala.reflect.internal.MissingRequirementError$.notFound(MissingRequirementError.scala:18)
at scala.reflect.internal.Mirrors$RootsBase.getModuleOrClass(Mirrors.scala:53)
at scala.reflect.internal.Mirrors$RootsBase.getModuleOrClass(Mirrors.scala:66)
at scala.reflect.internal.Mirrors$RootsBase.getPackage(Mirrors.scala:173)
at scala.reflect.internal.Definitions$DefinitionsClass.ScalaPackage$lzycompute(Definitions.scala:161)
at scala.reflect.internal.Definitions$DefinitionsClass.ScalaPackage(Definitions.scala:161)
at scala.reflect.internal.Definitions$DefinitionsClass.ScalaPackageClass$lzycompute(Definitions.scala:162)
at scala.reflect.internal.Definitions$DefinitionsClass.ScalaPackageClass(Definitions.scala:162)
at scala.reflect.internal.Definitions$DefinitionsClass.init(Definitions.scala:1377)
at scala.tools.nsc.Global$Run.<init>(Global.scala:1229)
at xsbt.CachedCompiler0$$anon$2.<init>(CompilerInterface.scala:116)
at xsbt.CachedCompiler0.run(CompilerInterface.scala:116)
at xsbt.CachedCompiler0.run(CompilerInterface.scala:102)
at xsbt.CompilerInterface.run(CompilerInterface.scala:27)
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:102)
at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:48)
at sbt.compiler.AnalyzingCompiler.compile(AnalyzingCompiler.scala:41)
at org.jetbrains.jps.incremental.scala.local.IdeaIncrementalCompiler.compile(IdeaIncrementalCompiler.scala:29)
at org.jetbrains.jps.incremental.scala.local.LocalServer.compile(LocalServer.scala:26)
at org.jetbrains.jps.incremental.scala.remote.Main$.make(Main.scala:62)
at org.jetbrains.jps.incremental.scala.remote.Main$.nailMain(Main.scala:20)
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)
Warning:scalac: No 'scala-library*.jar' in module dependencies [compiler_settings]
答案 0 :(得分:3)
转到文件 - &gt;项目结构 - &gt;全局库并在那里添加Scala SDK。就我而言,已经存在两个SDK(在常春藤文件夹中)并提供选择。
答案 1 :(得分:2)
即使在拥有兼容版本的java,sbt和scala SDK之后,我最近也遇到了类似的问题,但是在将sbt项目导入Intellij中时发现了导致此错误的原因很少。
请找到以下屏幕截图。
除上述问题外,在IntelliJ中打开项目时,您可能最终在代码中遇到依赖项源链接问题。这是因为文件->项目模块->模块下存在其他根模块。在模块面板中,除了projexctxx-process和projectxx-process-build之外,还将看到projectxxx-src和projectxx-test。因此,请删除projectxx-src和projectxx-test。
答案 2 :(得分:0)
您必须拥有Java 8 JDK才能使Scala工作
请访问scala网站以获取更多信息
答案 3 :(得分:0)
就我而言,我必须在项目结构-> SDK 中指定正确的JDK主页路径。
由于尚未设置我的 JAVA_HOME 变量,因此Intellij使用的默认值不存在。
用JDK的正确路径替换JDK主页路径(在我的情况下为: /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home )< / p>
用文件夹的名称替换“ adoptopenjdk-8.jdk”(可能是jdk_1.8.0_xxx.jdk)
希望对您有帮助。
答案 4 :(得分:0)
仅应在侧面scala上使用Java 8 JDK版本。甚至没有更高的JDK版本。
答案 5 :(得分:0)