在scala项目中,编译器错误 – 无法解析符号列表?
我完全是Scala的新人。
我在Ubuntu 12.04上安装了java,sbt和scala:
nazar_art@nazar-desctop:~$ sbt sbt-version [warn] Alternative project directory .sbt (/home/nazar_art/.sbt) has been deprecated since sbt 0.12.0. [warn] Please use the standard location: /home/nazar_art/project [info] Loading project definition from /home/nazar_art/.sbt [info] Set current project to default-5b9232 (in build file:/home/nazar_art/) [info] 0.12.4 nazar_art@nazar-desctop:~$ scala -version Scala code runner version 2.10.2 -- Copyright 2002-2013, LAMP/EPFL nazar_art@nazar-desctop:~$ java -version java version "1.7.0_40" Java(TM) SE Runtime Environment (build 1.7.0_40-b43) Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)
我在IDE上安装了scala和sbt插件。
当我尝试第一个示例项目时,我看到下一个错误:
下一行后无法解析符号列表:
package example import common._ object Lists { def sum(xs: List[Int]): Int = { // <== here underline for List if (xs.isEmpty) 0 else xs.head + sumList(xs.tail) } }
我无法弄清楚到底出了什么问题? IDEA建议我导入java.util.List
– 但是这个类没有任何isEmpthy()
方法。
有什么建议吗?
- 如何解决这个麻烦?
更新:
- 我重新安装了新版本的IntelliJ IDEA 13社区版而不是#12。在
/usr/local/Idea
。 - 删除了sbt –
sudo apt-get purge sbt
。 并重新安装这个脚本 。 -
我去了
/MyProjectDirectory/project/
并用内容创建了’plugin.sbt’:addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.5.1")
-
在此之后,我从我的项目目录中
sbt gen-idea
。 它为Idea重建项目。 - 并用想法问候窗口(Open Paroject)打开了这个项目。 当然,安装了
sbt
和scala
插件。
它应该足够但它再次显示:
Cannot resolve symbol List
并建议导入import scala.collection.immutable.List
。 但这没有用。 它继续用红线加下划线。
如果您的IDEA插件没有看到scala类,请转到文件 – >项目结构并检查以下内容:
-
确保Scala Facet已添加到您的应用程序中。 转到“构面”选项卡,检查是否列出了Scala构面。 如果没有,您需要添加和配置它。 然后确保Scala Facet列在需要Scala的所有模块下。
-
确保Scala Facet使用正确版本的scala库(如果找不到,则Idea会用红色标记)。
-
确保scala-library.jar位于使用Scala的模块的依赖项列表中。 检查路径是否正常。
对于任何遇到相同问题的人,请先在Idea中尝试以下操作:
文件 – >使高速缓存无效 – >无效并重新启动
我认为这是IDEA的一个问题。 如果在Scala IDE中打开同一项目,则可以快速validation这一点。
您也可以在命令行中尝试:
[m:~/Scala/Hello]$ scala Welcome to Scala version 2.10.2 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_51). Type in expressions to have them evaluated. Type :help for more information. scala> var l = List() l: List[Nothing] = List()
- 将Intellij-Idea UI表单导出到Eclipse
- Javadoc使用相对路径链接到src / main / resource或src / test / resource文件
- 使用IntelliJ IDEA运行Maven项目
- 无论如何用vim / emacs +命令行取代IntelliJ?
- 从Java使用.net WCF服务
- IntelliJ IDEA插件开发:保存选项卡组,持久保存它们,并在用户请求时重新加载一组选项卡
- 为什么java编译器不报告Intellij中多播表达式的未经检查的强制转换警告?
- 如何使用Java EE 7和Glassfish 4在IntelliJ IDEA Community Edition中创建Java Servlet应用程序?
- 类文件有错误的版本52.0,应该是50.0