问题如下,我有一个 jar 程序,它帮助我做了一些令人惊奇的事情......我在终端上运行它,如下所示:
jar /application/amazing.jar
它可以运行,但似乎将我的终端带到另一个环境,如果我使用向上箭头键来查找我在 java 应用程序中输入的最后一个命令,我就无法找到它。
答案1
我希望该命令确实是java /application/amazing.jar
用于jar
维护 jar 文件而不是执行它们的命令。如果您确实用于jar
运行该文件,请使用第二个选项并替换java
为“jar”。
只需运行一次该命令chmod +x /application/amazing.jar
。这将使 jar 可执行。之后,您应该能够使用该命令/application/amazing.jar
或amazing.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