首页 > 解决方案 > 如何运行 scopt scala 应用程序

问题描述

我正在使用这个库来编写 cli 应用程序:https ://github.com/scopt/scopt

我只能使用以下命令在 sbt 中运行我的应用程序: run --foo 2 -b 1

理想情况下,我想像这样在终端中运行我的应用程序: myapp --foo 2 -b 1 或者这个脚本: ./myapp --foo 2 -b 1

我该怎么做?

标签: scalacommand-line-interfacescopt

解决方案


您可以使用sbt-assembly创建一个 Fat jar,然后您可以像这样运行:

java -jar path/to/app.jar --foo 2 -b 1

您还可以使用sbt-native-packager为您的平台创建安装程序,运行安装程序后将有一个脚本PATH允许您执行以下操作:

app --foo 2 -b 1

但是,在后台,这仍然在调用java -jar
如果您不想在目标平台上安装JRE,您可以使用sbt-native-image (在后台使用Graal来创建应用程序的本机映像,可以像任何其他二进制文件一样运行。

./app --foo 2 -b 1

推荐阅读