我应该将可执行 jar 放在哪里?

Red*_*ter 5 filesystem java

可执行文件(构建的程序和 shell 脚本)通常位于 /bin 或 /usr/bin 中,但是 jar 文件呢?这是一个“程序”,让我认为它应该放入 bin 中,但另一方面它需要一个脚本来启动它。

我有一个非常简单的脚本来启动 jar。

java -jar myapp.jar
Run Code Online (Sandbox Code Playgroud)

但是我应该把 jar 文件放在哪里呢?

hee*_*ayl 4

这取决于你,我建议不要使用任何指定存储系统范围二进制文件的地方。虽然您可以将其放在/usr/local/bin或任何其他指定的位置来存储系统范围的二进制文件,但由于它不是常规的二进制文件,您最好将其放在其他地方。您的主目录也可能是一个好地方。

实际上,只要您要使用完整路径来调用它,将其放在哪里并不重要:

java -jar /path/to/myapp.jar
Run Code Online (Sandbox Code Playgroud)

然而,如果您想将其放在 中的某个位置PATH,则可以将包含该文件的目录的路径添加到PATH(将其放入 中~/.bashrc):

export PATH=$PATH:/path/to/directory
Run Code Online (Sandbox Code Playgroud)

确保该目录不包含任何其他内容(否则它将成为运行随机恶意命令的好地方!!)。

现在您还可以创建命令的别名,例如:

alias myapp='java -jar /path/to/myapp.jar'
Run Code Online (Sandbox Code Playgroud)

把它放进去~/.bash_aliases。现在您只需键入以下内容即可运行该应用程序:

myapp
Run Code Online (Sandbox Code Playgroud)