【问题标题】:IntelliJ gives errors saying "Cannot resolve symbol " in build.sbt after creating Scala projectIntelliJ 在创建 Scala 项目后在 build.sbt 中给出“无法解析符号”的错误
【发布时间】:2020-12-24 13:47:57
【问题描述】:

在 IntelliJ 中创建 Scala 项目时,build.sbt 文件显示错误“无法解析符号名称”。当我创建一个“Hello World”Scala 对象时,尽管 sbt 文件中存在错误,但程序运行成功。

当我在 build.sbt 中为 Spark 核心添加依赖项时,它显示“无法解析符号库依赖项”,而在 Scala 对象中,当我为 SparkContext import org.apache.spark.SparkContext 添加导入时,它显示“无法解析符号 apache ”。

我浏览了以下相关帖子:

IntelliJ inspection gives "Cannot resolve symbol" but still compiles code

并尝试“使缓存无效”,但没有解决问题。

我也试过删除IDEA目录并重新导入项目如下:

  1. 封闭的 IntelliJ。
  2. 进入项目文件夹,删除.idea目录。
  3. 打开 IntelliJ。
  4. 通过单击文件>>新建>>现有来源的项目再次导入项目。

但是,这也没有解决问题。

另外,我尝试使用较低版本的 Scala,但未能解决问题。

以下是 build.sbt 文件的内容:

name := "ScalaApp"
version := "0.1"
scalaVersion := "2.12.12"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.4.3"

它在 build.sbt 中显示这些错误可能是什么问题,尽管 Scala hello world 运行良好,但当我在 build.sbt 中添加另一个依赖项并在 Scala 类中包含导入时却没有?

谢谢

【问题讨论】:

  • 谢谢。我将 Scala 的 build.sbt 中的版本更改为 2.12.12,将 spark-core 的版本更改为 2.4.3。它在 build.sbt 中显示了与帖子中提到的相同的错误。使用更新的 build.sbt 更新帖子

标签: scala intellij-idea sbt


【解决方案1】:

问题已解决。对我有用的解决方案是使用较低版本的 SBT 0.x 而不是 1.x。在创建项目时,我从下拉列表中选择了 sbt 0.x 版本 (0.13.18),它没有在 build.sbt 中给出错误,我可以继续添加依赖项而不会出现上述错误。

【讨论】:

    猜你喜欢
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 2013-09-28
    • 2019-05-31
    • 2017-10-02
    • 1970-01-01
    • 1970-01-01
    • 2021-02-18
    相关资源
    最近更新 更多