问题标签 [scala-script]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1563 浏览

shell - 较短的 Scala 脚本标头

可以通过以下方式启动文本文件,在 Scala 中编写 shell 脚本:

为了简化脚本创建,我想编写一个名为scalash(可能是 BASH 脚本)的可执行文件,允许将 Scala 脚本头缩短为一行:

是否可以 ?如果我可以将可选参数传递给额外的点scalash,例如添加类路径依赖项。

0 投票
3 回答
773 浏览

scala - 编译 Scala 脚本。Scala 脚本如何工作?

时髦的

Groovy 带有一个名为groovyc. 对于每个脚本,groovyc生成一个扩展类groovy.lang.Script,其中包含一个 main 方法,以便 Java 可以执行它。已编译类的名称与正在编译的脚本的名称相匹配。

例如,使用此HelloWorld.groovy脚本:

这变成了这样的代码:

斯卡拉

Scala 带有一个名为scalac.

例如,使用相同的HelloWorld.scala脚本:

该代码对 无效scalac,因为编译器需要类或对象定义,但可以在 Scala REPL 解释器中使用。怎么可能?它在执行之前是否包含在一个类中?

0 投票
1 回答
190 浏览

shell - 在 Scala(脚本)中执行子命令并让它“接管”

我想创建一个虚拟脚本(可能会编写一个真实的脚本),例如从 Scala 进程中调用 Python 交互式解释器,并让用户与子进程完全交互;即子进程的标准输入/标准输出/标准错误应该连接到父(Scala)进程的标准输入/标准输出/标准错误。我尝试使用以下方法无济于事:

然而,虽然它似乎确实成功运行了一个python子进程,但我与它的唯一交互是Ctrl-C

如果立即按 Ctrl-C,我什至没有得到该输出:

知道为什么会发生这种情况以及如何使其按预期工作吗?

0 投票
2 回答
8991 浏览

scala - Intellij-idea 中的 scala 类、脚本和工作表有什么区别?

我正在使用 Intellij-idea 进行 scala 编程(使用 sbt 插件)。

我想知道 scala 类、scala 脚本和 scala 工作表之间有什么区别。我们什么时候使用它们?

如果你能通过一个简单的例子来解释它,这将是非常好的。

谢谢

0 投票
1 回答
99 浏览

scala - 运行 IntelliJ scala 项目错误

我很长时间没有使用 IntelliJ 15,但从来没有遇到过这样的问题。当我这样做时:New Project -> Scala,然后一切正常,但是当我执行 New Project -> SBT 时,我什至不能拥有 main,因为它给了我这个:

Exception in thread "main" java.lang.ClassNotFoundException: testing at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method)

Make我确实尝试从删除Edit Configurations,我也尝试添加Scala scriptEdit Configurations但仍然有这个问题(它说即使我正确链接它也找不到 scala 脚本)。另外,我读了这个话题:

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

但还没有找到解决办法。谢谢你的建议。

0 投票
1 回答
188 浏览

scala - 如何在 Scala 脚本中使用过滤器功能

作为我学习的一部分,我正在尝试将 Scala 表达式写入 scala 脚本,但遇到了错误。

我在 Scala REPL 中成功执行的 scala 代码是

这成功执行,以下是我得到的结果。

我正在尝试将其制作为 Scala 脚本或类,以便按需重新运行任意次数。我将它保存在一个名为SumOfSquaresOfOdd.scala的文件中

当我使用 scalac 编译它时,控制台上会打印以下错误。

如何在脚本中使用 filter、map、reduce 方法?感谢您的帮助和支持。

更新:代码中的错字已更新。

0 投票
2 回答
108 浏览

scala - Scala 语言在某种程度上与 ScalaScript 相关

我的老板因为之前在https://scala.com上使用过 ScalaScript 的经验而抨击 Scala 语言,那么它们之间有什么关系吗?

我正试图在我的公司中宣传 Scala,因此消除这种误解很重要。

0 投票
1 回答
22 浏览

scala - 运行 scala 脚本:更改函数名称和重新编译没有效果

在我将函数名称从其他名称更改为 addOptitrans 并重新编译后,我收到以下错误:

make final_babylon DICTS=.* bash ../bin/babylon_add_optitrans.sh DICTS=.* /tmp/scalacmd6937716255793087955.scala:1: 错误:值 addOptitrans 不是对象 stardict_sanskrit.batchProcessor stardict_sanskrit.batchProcessor.addOptitrans("DICTS= .*") ^ 发现一个错误 make: *** [final_babylon] 错误 1

我已经确认更新的类是在类路径中的预期位置生成的。可能出了什么问题?

0 投票
1 回答
114 浏览

scala - 如何在管道运算符上使用 sbt/amm scala 脚本?

我想用 scala 脚本处理日志输出。像这样:
java -jar app.jar | log.sc或者java -jar app.jar | amm log.sc 如何写一个log.sc处理app.jar打印日志的交易?

动机

替换java -jar app.jar > app.log为一些更智能的方式来处理输出流。
从现在开始,我想按天将输出流保存到不同的文件中。

谢谢。

更新

想想这个例子:

它组装成一个Loop.jar,我该如何处理按日期打印日志到文件?

0 投票
0 回答
215 浏览

scala - sbt scala 脚本设置失败

我想根据此处的文档通过 sbt 方式设置 scala 脚本。
执行时遇到错误 java -Dsbt.main.class=sbt.ScriptMain -Dsbt.boot.directory=/home/user/.sbt/boot -jar sbt-launch.jar "$@"

错误信息:

我不确定 show 是否-Dsbt.main.class=sbt.ScriptMain意味着。

该文件也令人困惑:

将根据 Setup 设置的标准 sbt 脚本复制为 scalas 和 screpl(或任何您喜欢的名称)。

什么是标准的 sbt 脚本

scalas 是脚本运行器,应该使用 sbt.ScriptMain 作为主类

在哪里sbt.ScriptMain或如何定义它?