【问题标题】:Leiningen: Create executable jar to run without java -jarLeiningen:创建可执行 jar 以在没有 java -jar 的情况下运行
【发布时间】:2015-03-09 13:09:36
【问题描述】:

我正在尝试了解如何打包用 Clojure 编写的命令行应用程序以进行分发。我不希望用户必须使用java -jar myproject.jar arg1 arg2 来运行程序。 PHP 有一个叫做“Phar”的文件,它们基本上是可执行的 zip 文件,所以它们包含一个告诉 POSIX 系统如何解压和运行它们的 shebang。

我见过other Clojure apps 允许将jar 文件设置为chmod +x 然后直接执行。他们是如何做到这一点的? Uberjar 似乎只是制作了一个需要 java -jar 前缀的罐子。

【问题讨论】:

标签: jar clojure leiningen


【解决方案1】:

您可以使用lein-bin 执行此操作。

【讨论】:

    【解决方案2】:

    啊,我刚刚找到了我自己问题的答案。这不是标准功能,您基本上必须自己动手:https://github.com/tailrecursion/boot/blob/master/Makefile#L21

    【讨论】:

    • 是的,我正要回答这个问题,他们基本上将 jar 的内容附加到 bash 脚本的末尾并使用 java -jar 启动它。 java启动器会忽略脚本内容,从它开始的地方开始加载jar,真的很不错。
    猜你喜欢
    • 2012-06-13
    • 2018-07-16
    • 2013-03-15
    • 1970-01-01
    • 1970-01-01
    • 2013-03-17
    • 2020-03-28
    • 2016-07-09
    • 2011-12-30
    相关资源
    最近更新 更多