我想使用bash脚本中的java -jar命令执行jar文件。与此同时,我使用args []传递了一些我可以在main方法中访问的参数。
如果我尝试,我能够毫无问题地执行此操作,
java -jar org.sample.jar localhost 8080
但我想通过几个变量来配置这些参数。
例如: -
HOST=localhost
PORT=8080
当我尝试使用上面的变量时,bash脚本会无声地失败。
java -jar org.sample.jar $HOST $PORT
我也尝试过使用" $ HOST"但没有任何运气。我在这里做错了什么?
更新
我正在使用cygwin来执行/调试我的bash脚本。一旦我使用git bash执行相同的脚本就可以了。
答案 0 :(得分:1)
您应该将其包装在bash脚本中并使用bash参数。
假设你有一个脚本文件sample.sh。
在sample.sh中,它只包含一行,java -jar org.sample.jar "$@"
然后按bash sample.sh -Host hostname -port 8080
Here is a post about how to do this.
<强>更新强>
要在bash脚本中使用变量,您的脚本将如下所示:
Host="localhost"
Port=8080
java -jar org.sample.jar $Host $Port
我正在使用Eclipse,我只编写了一个具有main方法的类并打印了所有参数。然后我使用Eclipse导出一个jar文件然后使用了这个解决方案并且它运行了。