问题标签 [ammonite]
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.
scala - 如何在 Ammonite REPL 中创建 Scala 演示编译器?
我想在 Ammonite REPL 中创建一个 Scala 演示编译器,但是我总是得到Missing dependency 'object scala in compiler mirror'
.
我已经尝试过在未找到编译器镜像中的对象 scala 中提到的解决方法- 以编程方式运行 Scala 编译器。不幸的是,它不起作用。
如何让它发挥作用?
相同的代码适用于官方 Scala REPL。
scala - VS Code 在集成控制台中执行当前行或选择
这位习惯于 elpy 的 Emacs 老用户正在尝试使用 Scala 以及更具体地说是 Ammonite repl 迁移到 VSCode。
我使用 Ctrl+' 打开集成终端 & 我所要做的就是在 bash shell (ubuntu) 上输入 amm 来打开 repl;但是,我仍然想念能够使用 Ctrl+Enter 将编辑器中的行或选择发送到集成 shell。
我想这意味着一些编码。我可以从哪里开始?有没有人完成类似的?
非常感谢,
scripting - 如何知道当前脚本所在的目录
在编写脚本时,我想知道当前脚本在哪里,以便定位其他文件。
使用常规的 Scala 脚本,我知道如何做到这一点,但使用 Ammonite 脚本我不知道。
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
,我该如何处理按日期打印日志到文件?
scala - 如何使用 Amonite 提前提供密码进行 ssh
Problem: I need to access a command line API on a Remote machine.
我正在使用 Scala Amonite 库,我想知道是否有办法 ssh 并提供密码,这样我就可以在应用程序中进行操作,而不必在其中输入密码。
scala - 来自具有纯 Scala API 或 Ammonite API 的 Scala 程序中的 SSH 命令
我想执行一个 SSH 命令,然后在 scala 中的远程机器上执行一些命令。Scala API 和 Scala Ammonite 都提供了执行系统命令的方法。但是我在使用 ssh 时遇到问题。如何运行 ssh 命令然后运行命令并从我的 scala 程序中获取结果?
编辑1
在那篇文章中发现以下问题使用 scala 通过 ssh 远程发出命令
“ssh user@Main.local 'mkdir 桌面/测试'”。!
我想知道如何使用 scala Amonite API 来完成。我一直找不到路。
scala - 如何发出产生无限输出并立即返回的命令
当我编写以下代码时(在菊石中,但我认为这并不重要)
("tail -f toTail.txt" lineStream) foreach(println(_))
,程序按预期给我最后一行,然后挂起,即使我在文件中写了更多内容,也没有任何结果。
API 如何支持具有无限输出的进程?
我试着写val myStream = ("tail -f toTail.txt" lineStream_!)
,但它仍然没有返回写掉
这是 scala 文档所说的:
lineStream:像 run 一样立即返回,生成的输出通过 Stream[String] 提供。获取该 Stream 的下一个元素可能会阻塞,直到它变得可用。
因此我不明白为什么它会阻塞
顺便说一句,我与 Ammonite API 的行为完全相同
如果%%("tail", "-f", "toTail.txt")
再次键入该方法只是挂起并且不会立即返回。
ammonite - 如何让 scala 的 ammonite 使用 scala.util 而不是 ammonite.util 作为 util 的默认值?
在“官方” scala REPL 我可以做
但在 Ammonite-REPL 我得到
所以现在我必须使用scala.
前缀让它在 Ammonite 中工作:
我对 Scala 有点陌生,所以我不明白为什么 ammonite 会使用util
与(对我而言)“官方”不同的util
,所以如果有人能为此提供理由,我将不胜感激。
更具体地说,有什么办法util
可以scala.util
代替ammonite.util
?
java - 编译 Ammonite 脚本时堆内存不足
我正在尝试创建一个脚本,该脚本使用Slick 代码生成器将整个数据库映射到 Scala 文件,运行 docker 容器,并在其中运行的数据库上执行 ddl,每次运行时都有效地重建数据库.
这实际上很好用(我只需要编辑文件的第一行,删除包声明),但只有当我将 Tables.scala(输出文件)缩减为一个映射时,它才会在数据库的新实例(使用“Tables.ddl.createStatements”)。
问题是整个文件是 8k+ 行生成的代码,每次尝试编译(运行“amm buildDatabase.sc”)时,都会抛出这个异常:
我试过给以下
作为 jar 运行:
更改 JAVA_OPTS:
更改 SBT_OPTS:
...但似乎没有任何效果。这使用 Intellij 编译(并运行!),具有 512m 的堆内存。
注意,因为每次运行脚本都需要重新生成这个文件,所以我把主文件分成了三个编译块。我不确定这是否与我的问题有关。
请帮忙!谢谢你。:)
ammonite - Ammonite 类路径与 Github4s 冲突 (java.lang.AbstractMethodError)
我正在编写一个 ammonite 脚本来使用 Github4s 库来访问 github api 并且有一个问题,可能与类路径有关。脚本的简单版本如下:
它几乎是从 github4s 教程中复制而来的,但失败了:
完全相同的代码在一个简单的 SBT 项目中工作,这让我觉得 Ammonite 在类路径中注入了一些东西,它破坏了 github4s。
有没有办法在 ammonite 脚本中有一个更干净的类路径,或者我还能如何解决这个问题?