如何将“jar”转换为Linux可执行文件?

lqfhib0f  于 12个月前  发布在  Linux
关注(0)|答案(7)|浏览(184)

我知道如何将“jar”转换为windows可执行文件(.exe)。但我想知道如何将“jar”转换为Linux可执行文件(.?)。我已经搜索了谷歌,但没有得到确切的答案我想要什么,帮助做到这一点。

6jjcrrmo

6jjcrrmo1#

我想知道如何将“jar”转换为Linux可执行文件(.?)。
Linux不像Windows那样有可执行文件。在Linux中,我们有二进制文件和脚本。Linux是用解释器运行的;像Ruby和Python这样的语言。二进制文件是编译代码的文件,它们可以是库或整个程序。二进制文件和脚本都可以是可执行的。
要使程序在Linux中可执行,请在命令行中键入以下内容。

$ chmod +x myProgram

字符串
或者,您可以打开文件首选项,并在权限部分设置可执行文件。
由于Linux没有.exe文件或类似的文件,我们将不得不解决其他问题。在Linux和Mac中通常称为命令行或终端。我们希望创建一个可以作为整个程序运行的文件,为了告诉bash为文件启动脚本环境,我们使用 hashbang.这是文件的第一行,指示bash查找解释器以将文件的其余部分发送到。对于bash脚本,如Windows上的Batch Script,我们将以#!/bin/bash启动文件。#!(hashbang)之后的路径告诉bash要查找解释器。对于.jar,将hashbang设置为#!/usr/bin/java -jar,然后将.jar cat到带有hashbang的文件。这可以在Linux的终端中完成。
用java jar hashbang创建一个文件。

$ echo '#!/usr/bin/java -jar' > myBin


我们将hashbang作为字符串写入新文件myBin。
将jar写入文件。

$ cat my.jar >> myBin


>>将jar追加到接收文件。
这将创建一个包含bash hashbang和jar的文件。接下来将myBin设置为可执行并尝试运行程序。

$ chmod +x myBin
$ ./myBin

cngwdvgl

cngwdvgl2#

创建一个sh Package 器文件,包含以下内容并使其可执行:

#!/bin/bash

java -jar <your-jar>

字符串
可选地添加一些vm参数。
也许有一些工具可以生成这样一个文件,但我认为手动完成它几乎没有什么努力。

wrrgggsh

wrrgggsh3#

尝试packr工具,它将帮助您从Java应用程序创建本地Linux可执行文件。

uyto3xhc

uyto3xhc4#

你可以通过执行java -jar myFile.jar来运行jar文件。
但是,要使jar文件本身可执行,您需要设置可执行位,因为消息hinds.chmod +x /path/to/your/file/myFile.jar将完成此操作。
然后你可以执行./myFile.jar来运行它。
man chmod将为您提供有关chmod如何工作的信息。
Source:How can I make a .jar file executable? on AskUbuntu.

y3bcpkx1

y3bcpkx15#

虽然编写shell脚本是可行的,但在大多数情况下,它似乎有点矫枉过正。为什么不直接使用别名并将其放入.bashrc.bash_aliases文件中呢?像这样:

alias whatever='java -jar /path/to/whatever.jar'

字符串
(既然我的解决方案在这里没有作为答案出现,我的“为什么”是一个有点真实的问题:是否有一些隐藏的危险或功能我错过了?或者这是一个坚持最严格的解释OP的问题的问题?)

drnojrws

drnojrws6#

在这种情况下,可能更恰当和准确的方法是创建一个桌面配置文件。

mzillmmw

mzillmmw7#

一个很晚的答案,但也许有人会需要它!
要使jar文件在Linux上“可执行”,您需要打开文件属性,并在常规部分-->打开方式-->单击更改并在应用程序首选项顺序下添加“java -jar”,并在权限部分设置程序可执行文件。

相关问题