2010-08-30 78 views
6

我使用了shell脚本来运行Java类。 我的脚本包含创建shell脚本来运行Java程序

#!/bin/sh 
java -jar jobs/job.jar 

这是我失败的尝试运行它。

[[email protected]]#sh testapp.sh 
Unable to access jarfile jobs/job.jar 

,如果我只是这样做在命令行正常工作

[[email protected]]#java -jar jobs/job.jar 

感谢。

+1

你从同一个目录下的脚本? – 2010-08-30 07:43:58

+0

建议不要在超级用户模式(又名root)下例行运行。 – emory 2010-08-30 07:57:50

回答

3

使用您的JAR文件的绝对路径, G。 /root/jobs/job.jar

7

最好的办法是让当前目录名称以及与此在那里得到:

#!/bin/sh 
cd `dirname "$0"` 
java -jar ./job/job.jar 
+0

这似乎是实际的正确答案,因为当您计划移动文件(或者甚至共享文件)时,使用绝对路径不是一种选择, – Sloy 2013-09-05 22:35:03