Scala工作表无法解析类名 - IntelliJ IDEA

时间:2016-05-26 03:08:38

标签: scala intellij-idea sbt intellij-scala

我正在讲课,讲师正在使用Eclipse,但我正在使用IntelliJ IDEA Community Edition 15.0.6,而名为rationals.scala的Scala工作表上的代码如下所示

object rationals{
  val x = new Rational(1,2)
  x.numer
  x.denom
}

//noinspection ScalaPackageName
class Rational(x: Int, y: Int) {
  def numer = x
  def denom = y
}

Scala工作表工作表将无法计算,并且存在与读取类定义相关联的警告(而非错误)

  

包名称与目录结构不对应,这可能   导致解决此文件中的类的问题

此外,这很奇怪,但可能很重要,IDEA标志着数字和牛仔作为拼写错误。

任何指导? THX

2 个答案:

答案 0 :(得分:3)

问题不在于名称匹配目录结构,实际问题是您在工作表中有多个不喜欢的定义。如果您在class内声明object,那么它将正确计算:

object rationals {
  class Rational(x: Int, y: Int) {
    def numer = x
    def denom = y
  }

  val x = new Rational(1,2)
  x.numer
  x.denom
}

IntelliJ worksheet

答案 1 :(得分:3)

@Yuval Itzchakov @MaxWen

如果您在工作表外引用Rational.scala,则必须确保在首次运行时勾选“制作项目”框

Eclipse和IntelliJ工作表不一样。 -