0

如果我想java --jar sample.jar从命令行启动一个 java 可执行文件,我该如何编写 bash 脚本?以下不起作用

#!/usr/bin/java 
--jar $HOME/tools/sample.jar
4

2 回答 2

7
#!/bin/sh
java --jar $HOME/tools/sample.jar

Java 不是解释器,只能在 shebang( #!)中使用脚本解释器


为了完整起见,无论如何您都不能以这种方式将参数传递给解释器。

“正确”但仍然错误的方式本来是

#!/usr/bin/java --jar 
$HOME/tools/sample.jar

我不完全清楚,但维基百科暗示第二种方法可能只是工作..

但是,由解释器决定是否忽略 shebang 行;因此,由以下两行组成的脚本在运行时简单地将这两行回显到标准输出:

#!/bin/cat
Hello world!
于 2013-01-22T03:36:33.320 回答
0
#!/bin/bash

exec java -jar /path/to/jar/the-file.jar "$@"

使用$@bash 参数传递给 jar 文件

于 2014-09-16T02:42:46.977 回答