使用scala创建自定义shell

时间:2018-05-29 03:44:16

标签: scala shell

我需要有关shell / cli框架的建议。用例非常简单 - 我有一堆命令可以接受任意数量的参数,并且会在屏幕上产生输出。

请注意,我严格遵循shell并且 cli解析(例如scopt)。

欢迎任何建议和/或建议。截至目前,我真的找不到任何。

1 个答案:

答案 0 :(得分:0)

我想你可能对Ammonite感兴趣。它提供了各种用scala编写脚本的工具。你可以看看这个小example script。 Ammonite还允许您使用像这样的导入来定义同一文件中的所有脚本依赖项(此语法甚至是supported by Intellij IDEA):

import $ivy.`org.scalaj::scalaj-http:2.3.0`, scalaj.http.Http

如果您担心脚本启动时间,那么我建议您特别查看GraalVMnative-image工具。它允许您将任何JVM应用程序编译为本机二进制文件。它还进行了AOT(Ahead-of-time)编译,大大减少了JVM应用程序的启动时间(低至约1-10ms)。