无法运行程序“.... / abc.exe”:错误= 13,权限被拒绝

时间:2014-12-12 04:38:25

标签: java exec

我正在尝试执行以下代码:

       try 
        {     
            Runtime rt = Runtime.getRuntime() ;     
            Process p = rt.exec("/Users/abc/xyz.exe") ;     
            InputStream in = (InputStream) p.getInputStream() ;    
            OutputStream out = (OutputStream) p.getOutputStream();     
            InputStream err = (InputStream) p.getErrorStream() ; 
            System.out.println("in "+ in);
            System.out.println("out" + out);
            System.out.println("err" + err);
            //do whatever you want 

            p.destroy() ; 
        } 
        catch(Exception e) 
        {
         /*handle exception*/
            e.printStackTrace();
            throw new Exception("Error " + e.getMessage(), e.getCause());
        }

我收到以下错误:

Cannot run program "/Users/abc/xyz.exe": error=13, Permission denied

我检查了我是否拥有必要的权限并通过终端找到了这个:

-rw-r--r--@ 1 username  staff  4016 Nov 22 23:12 /Users/abc/xyz.exe

有关如何使其正常工作的任何建议吗?

2 个答案:

答案 0 :(得分:20)

您需要更改xyz.exe的权限

chmod u+x /Users/abc/xyz.exe

答案 1 :(得分:1)

您在该文件中没有执行权限。您需要更改该文件的执行权限。它只包含读写。请参考here更改权限