问题标签 [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 - 如何让 IntelliJ 识别 Scala 脚本中的导入?
我无法让 IntelliJ 在我的 Scala 脚本中识别 Ammonite 导入。这是一项新功能,在此处报告,其中也有说明。我按照说明在 IntelliJ 中启动了一个新的 sbt 项目进行尝试,但它不起作用。
我在项目的“外部库”中看到了 Ammonite 依赖项,我在以下文件中指定了这些依赖项build.sbt
:
libraryDependencies += "com.lihaoyi" %% "ammonite-ops" % "1.0.3"
libraryDependencies += "com.lihaoyi" % "ammonite" % "1.0.3" cross CrossVersion.full
(非常简单的)项目似乎成功构建。我还指定应将 Scala 工作表文件视为“Always Ammonite”。
我还需要做什么才能使其正常工作?
版本:
- Java 1.8.0
- 斯卡拉 2.12.4
- sbt 1.0.3
- IntelliJ CE 2017.3.2
- IntelliJ scala 插件 2017.3.11
scala - 如何在可执行文件之前将 Java_opts 传递到 dockerfile 中的入口点?
我正在使用 ammonite 运行 scala 脚本。我需要通过 JAVA_OPTS 来限制 ammonite 消耗的内存。根据ammonite docs,我可以这样做
JAVA_OPTS='-Xmx<limit>' amm <scala script>
现在我想在一个 docker 容器中运行这个脚本,我正在这样做:
这运行良好并运行脚本。问题在于将 JAVA_OPTS 传递给 amm。
ENTRYPOINT 要求第一个参数是可执行文件,但我想在 amm 之前有 JAVA_OPTS。
如何做到这一点?
scala - 如何访问 Scala REPL 中的最后一个输出值?
在 Ruby、Python 和可能的其他一些 REPL 中,您可以使用 引用最后一个值_
:
如何在 Scala REPL 中做到这一点?我知道.
REPL 的功能:
但这不符合我的要求。显然也没有_
,或者我不会问:
我怎样才能做到这一点?Ammonite 的回答也很好,但很想在香草 REPL 中这样做。
java - 将读取 .ssh/config 的 scala 或 java 库
我的.ssh/config
文件中有一个条目,如下所示:
主机 ip-172-16-*
正如大多数人所知,这将允许我运行:
ssh ip-172-16-2-108.ec2.internal
并且我作为 Ubuntu EC2 实例的默认用户 - ubuntu 进入私有服务器。我希望对创建采取一些具体行动。
最终我正在寻找的是与任何一个或直接来自相同scala-ssh
的jassh
功能jsch
我不是要求任何人推荐一个库,而是如何/是否支持此功能。使用jassh
,我尝试使用代理选项,但没有成功。
最终我可以直接使用 ssh,但即使使用ammonite
,如果使用%('ssh, Symbol("ip-172-16-2-108.ec2.internal")
. 我认为这将使用基本 ssh,它会加载配置和匹配,就像裸 ssh 一样。我也可以设置我的配置不使用nc
这听起来确实像我在要求一个图书馆,所以如果它被关闭了,就这样吧,但我已经直接尝试了 4 并且没有,似乎完全支持.ssh/config
TIA,杰夫
scala - 您如何将本地 maven repo 与 Ammonite 一起使用?
我正在使用 ammonite ( http://ammonite.io/ ) 来编写 Scala 脚本。它允许您通过这种文本获取远程依赖项:
但是,您如何使用本地 maven 存储库(例如 ~/.m2)?
scala - 如何让 Intellij 在 ammonite 脚本中解析私有 maven 存储库中的包?
ammonite 的 IDE 支持如本文所述https://blog.jetbrains.com/scala/2018/05/07/ammonite-support/中所述。
Ammonite 使用私有 maven 存储库也可以在链接http://ammonite.io/#import $ivy中描述的脚本中工作
在我的情况下,唯一的事情是如何让 intellij 在我的私人 maven 存储库中找到包。intellij 看起来不会咨询~/.ammonite/predef.sc
scala - 如何在 ammonite REPL/SHELL 中运行 Scala REPL 命令?
我的意思是命令喜欢:t
:type
检查表达式的类型或任何其他类型的命令。
ammonite 背后的想法真的很吸引我,现在我正试图用它来更熟悉 scala。
作为初学者,这些命令对我很有帮助,但在 amm shell 中是语法错误。
我浏览了 ammonite.io 的文档,但找不到任何相关内容。
是否可以在 ammonite shell/repl 中运行这些命令?
scala - 在 Ammonite 中导入 $ivy
我需要在 Ammonite 脚本中导入sikulixapi 。我可以这样做。
因此,如果我从 Ammonite 的交互式控制台执行此操作:
但是jxgrabkey确实存在于 Maven 中。
这也失败了:
我没有使用任何 HTTP 代理。
其他版本的 sikulixapi 还有其他问题:
尝试使用 Ammonite 1.2.1、1.3.3 和 1.4.0。
scala - 从 Scala 启动的进程终止,但 Scala 永远等待它的终止
我以这种方式从 Ammonite 脚本启动一个进程:
启动的进程终止正常,但它不知道。通常它工作正常并且检测到进程终止正常。
使用jstack
,我采用了调用堆栈:
它被锁定在这里:
更多细节:
- 爪哇 8
- 斯卡拉 2.12
- CentOS 7
我怎样才能使这样一个简单而基本的任务更可靠?这是来自 scala.sys.Process 的错误吗?
scala - 无法从 Scala 脚本停止和 rm docker 容器
我正在尝试从 ammonite Scala 脚本中执行以下命令:
我总是得到以下输出:
我已经尝试了很多不同的变体,但没有任何运气,但它在控制台上运行良好。一些帮助将不胜感激。