我有一个可执行文件(ffmpeg),我试图在Mac上运行Java程序.我使用Java程序发送命令chmod 777 /path/to/ffmpeg,但是当我尝试运行ffmpeg时,我收到以下错误:
java.io.IOException: Cannot run program "/Users/james/WalkTheHall/ffmpeg": error=13, Permission denied
Run Code Online (Sandbox Code Playgroud)
但是当我chmod 777 /path/to/ffmpeg在打开Java应用程序之前自己从Terminal 运行时,ffmpeg的命令将在Java程序中运行得很好.
chmod在Java程序中调用和自己调用它之间有区别吗?为什么它不起作用?谢谢!
小智 6
我的代码中遇到了同样的问题.我通过在exec之后添加waitFor来解决这个问题.执行下一个命令时,"chmod"进程未完成.代码可能如下所示:
p = Runtime.getRuntime.exec("chmod 777 xxx");
p.waitFor();
Runtime.getRuntime.exec("./xxx");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
43623 次 |
| 最近记录: |