日期:2014-05-20  浏览次数:20571 次

通过java代码执行start.bat的问题,求指点
我在E:/bc_newtest/bin/ 下面有
1.可执行jar 文件 test.jar
2.自己写的start.bat
--------------------
Echo off
Echo Program has been launched....
Echo You can press Ctrl+C to stop the program
Rem 执行jar命令
java -Xms512m -Xmx1024m -cp E:/bc_newtest/bin -jar test.jar
--------------------
双击start.bat jar运行正常

但是通过java 程序如下:
Runtime.getRuntime().exec("cmd /c start E:/bc_newtest/bin/start.bat");
报错:
unable to access jarFile test.jar,

这是怎么回事,怎么正确的在java中运行 可执行的jar程序?

------解决方案--------------------
把test.jar的目径放到classpath里试试。
------解决方案--------------------
估计是当前路径问题,批处理文件的最前面写上两句话:

E:
cd /bc_newtest/bin/

或者启动命令修改下:
java -Xms512m -Xmx1024m -cp E:/bc_newtest/bin -jar E:/bc_newtest/bin/test.jar

------解决方案--------------------
在start后面 加上call

变成

cmd.exe /c start call E:/bc_newtest/bin/start.bat
试试