我怎样才能让 jar 程序运行得更像本机程序?

我怎样才能让 jar 程序运行得更像本机程序?

问题如下,我有一个 jar 程序,它帮助我做了一些令人惊奇的事情......我在终端上运行它,如下所示:

jar /application/amazing.jar

它可以运行,但似乎将我的终端带到另一个环境,如果我使用向上箭头键来查找我在 java 应用程序中输入的最后一个命令,我就无法找到它。

答案1

我希望该命令确实是java /application/amazing.jar用于jar维护 jar 文件而不是执行它们的命令。如果您确实用于jar运行该文件,请使用第二个选项并替换java为“jar”。

只需运行一次该命令chmod +x /application/amazing.jar。这将使 jar 可执行。之后,您应该能够使用该命令/application/amazing.jaramazing.jar如果/application它包含在您的路径中,则可以运行该 jar。

另一种方法是编写一个简短的脚本来运行你的 jar。例如,/usr/local/bin/amazing使用以下命令运行的脚本amazing可能包含:

#!/usr/bin/bash
java /application/amazing.jar

第一种方法比较简单,但无法在运行 jar 之前进行任何必要的设置。第二种方法可以处理运行 jar 之前所需的设置。只需在 jar 命令之前添加设置即可。它们可以组合起来,并且java可以从脚本中删除命令。

答案2

罐包装器

sudo apt-get 安装 jarwrapper

运行可执行 Java .jar 文件

Jarwrapper 设置 binfmt-misc 使用已安装的 java 运行时来运行可执行 jar 文件。

它还包括一个 /usr/share/jarwrapper/java-arch.sh 脚本,用于将 Debian 架构名称转换为 java 名称,以定位 libjvm.so

相关内容