gpt4 book ai didi

scala - 如何在IntelliJ IDEA中运行Scala脚本?

转载 作者:行者123 更新时间:2023-12-03 09:08:05 24 4
gpt4 key购买 nike

这是一个琐碎的scala脚本:

object test {
def hi() { print("hi there from here") }
}


test.hi()

从命令行执行预期的操作:
scala /shared/scaladem/src/main/scala/test.scala
Loading /shared/scaladem/src/main/scala/test.scala...
defined module test
hi there from here
Welcome to Scala version 2.10.2 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_65).
Type in expressions to have them evaluated.
Type :help for more information.

scala>

但是在Intellij中,它会给出编译错误。右键点击|运行test.scala
expected class or object definition
test.hi()
^

顺便说一句,我也尝试过运行为scala工作表。更糟的是-大量的垃圾输出,甚至还没有接近编译。

更新:似乎存在一个较旧但类似的问题:

How to run Scala code in Intellij Idea 10

我进入了“运行配置”,并按照指示未选中“制作”(这很麻烦,但事实如此。)

但是,进行更改后,我得到了另一个错误:
Exception in thread "main" java.lang.NoClassDefFoundError: scala/Either
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113)
Caused by: java.lang.ClassNotFoundException: scala.Either
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more

注意:Scala库已正确设置:



另一个更新(在@lhuang的评论之后)我遵循了从零开始创建另一个项目的建议。在这种情况下,Scala工作表可以正常工作(test.sc)。但是,即使在这个全新的“scala”项目中,scala脚本(在通过“scala test.scala”运行命令行时也可以使用)仍然不起作用。

最佳答案

答案是以下各项的组合:

  • (a)创建一个全新的Scala项目(由@lhuang建议)和
  • (b)运行脚本时,需要进入“运行配置”并删除“生成”步骤(如“相关” SOF问题中所述)。

  • 这显示了Intellij及其scala插件的粗糙边缘。尤其是当我想将Scala与Java集成时,即使现在甚至可以使用Intellij,也似乎很困难(需要频繁创建新的Scala项目对于大多数试图合并Scala的Java项目来说是一个开始。

    但是对于scala优先项目,这似乎是可行的。

    关于scala - 如何在IntelliJ IDEA中运行Scala脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20087105/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com