19

怀疑这篇文章的至少一部分可能是愚人节的玩笑,我开始在我的 Linux 笔记本电脑上安装 Dotty,我很高兴也很惊讶地发现它似乎是完全正确的——我能够得到给定的斐波那契函数REPL 的德语工作正常。

现在我想在 IntelliJ IDE 中用德语用 Dotty/Scala 编写代码,但到目前为止还没有实现这一点,或者就此而言,Dotty 编译失败并出现 SBT 错误的英语语言“Hello World”,见下文(对象的 IntelliJ 代码窗口中没有错误)。

通过 IntelliJ 新项目对话框打开一个新的 Dotty 项目会在我的 .ivy2 目录中放置一个新的 Dotty 实例,这与我在 REPL 中使用的不同。我找到了Felix Mulder的 Dotty 插件,但我不确定如何使用源代码插件。项目建立后:

  1. 我在 src > main 中创建的任何新 Scala 文件中都无法识别德语关键字。
  2. 在 build.sbt 中,一些运算符和关键字无法识别
  3. 在 build.sbt 每个条目都会给出错误 Expression Def.Setting[SomeType] must conform to DslEntry in SBT file
  4. 我收到此错误日志警告(两次):

    Binary version (0.1.1-20170410-0bd7821-NIGHTLY) for dependency ch.epfl.lamp#scala-library;0.1.1-20170410-0bd7821-NIGHTLY in default#skala_2.11;0.1-SNAPSHOT differs from Scala binary version in project (2.11).

我认为这可能是我的环境变量中的skaladotty路径的结果。PATH

搜索第 3 点中的错误消息将我带到这里:我可以切换到一个我知道很容易很好的非捆绑 SBT,但硬件仍然无法编译,而是给出一个相当长的 SBT 错误。

不幸的是,我不太了解 build.sbt 中条目的语法,无法根据 murmelssonic 的建议更改它们。如果我只需要学习,那么好吧,我相信我可以。

我相信我已经阅读了建议 build.sbt 错误可以忽略的帖子,因为它们实际上不会导致编译错误,但我无法确认这一点,因为我还不能编译任何东西。即使这是真的,我也想消除这些,最好不要掩盖合法的警告和错误。

我的问题可能更简单地表达为“如何为 IntelliJ 安装 Dotty 插件?”,但我不确定这是否是这一系列症状的完整解决方案。

系统信息:

  • 操作系统库本图 16.10
  • Java 1.8_121
  • IntelliJ 2017.1
  • 多蒂 v0.1.1-20170410
  • SBT 0.13.13 和 0.13.15(每次尝试)通过 IntellliJ 对话
  • SBT 0.1-SNAPSHOT(来自sbt versionsbt 目录中的命令行,用于更改 IntelliJ 设置)。
4

1 回答 1

30

虽然 Skala 是 Scala 语言的自然发展,但看到它的创建者 Martin Odersky 是德国人并且应该首先实现德语关键字,JetBrains 是一家由俄罗斯人创立的公司。因此,我们致力于将西里尔语关键字导出到编程世界。

在某种程度上,IntelliJ-Scala 已经是 Scala 编程语言规范的替代编译器。随着 IntelliJ全新Скала插件的发布,这一点将越来越真实!

这是 IntelliJ-Скала 团队唯一的德国成员的完全官方声明。

于 2017-04-11T20:07:52.030 回答