我做了一个终端的比赛,我一直工作在一个可执行的JAR文件。到目前为止,我通过在终端中输入java -jar name.jar
打开了它。这个工作,但是当我做了一个.sh
文件使用相同的命令,jar文件无法访问。 (情况[1])
后来,我意识到,如果我指定的jar文件,它打开。 (情况[2]),但jar文件和bash文件是在被称为“玩笑”同一个文件夹,如果我是到该文件夹移到别的地方,在bash的文件中指定的文件路径将不再有效。那么,有没有指定的bash文件的位置,无论它在哪里的方法吗?
在情况[1] bash的文件的内容:
#! /bin/bash
java -jar game.jar
(不工作)
情况[2]:
#! /bin/bash
java -jar Desktop/playgame/game.jar
(没有工作,但不可靠)
我已经使用chmod +rx bashfile.sh
使bash的文件可执行。
我有一个.command
文件,而不是.sh
文件试了一下,做了同样的。
另外,我在一个MacOS的莫哈韦10.14.2如果这是任何重要性。
提前致谢!
您还可以使用shebang
(printf '#! /usr/bin/env java -jar\n'; cat game.jar) > game
chmod +x game
如果game
的dir是在PATH
你可以调用
$ game