像 shell一样执行 jar
通常执行 java -jar helloworld.jar
可是看到 kettle 执行时候 ./spoon 或者 presto客户端 执行时候 ./presto
执行很间洁,怎么做到的?
一.新建 stub.sh
#!/bin/sh
MYSELF=`which "$0" 2>/dev/null`
[ $? -gt 0 -a -f "$0" ] && MYSELF="./$0"
java=java
if test -n "$JAVA_HOME"; then
java="$JAVA_HOME/bin/java"
fi
exec "$java" $java_args -jar $MYSELF "$@"
exit 1
二. 将脚本和 jar 合并,并赋予权限
cat stub.sh helloworld.jar > helloworld && chmod +x helloworld
三. 执行
./helloworld
参考文章: https://coderwall.com/p/ssuaxa/how-to-make-a-jar-file-linux-executable
本文介绍了一种使Java jar文件能够像shell命令那样直接执行的方法。通过创建一个包含执行jar文件所需命令的stub脚本,并将其与jar文件合并,最后赋予执行权限,即可实现这一目标。
1231

被折叠的 条评论
为什么被折叠?



