我想svn delete
从我的 Grails 应用程序中执行一个。我在 Grails 控制台中测试了以下两项:
"svn delete /usr/share/mydir".execute()
Runtime.getRuntime().exec("svn delete /usr/share/mydir")
在这两种情况下,java.lang.Process
都会返回一个 的实例,但不会执行命令(/usr/share/mydir
不会删除)。
此行为仅在应用程序在 Linux (Ubuntu) 上运行时发生。如果我在 Windows 上运行它,该命令会被执行。
更新
按照 Tim 在评论中的建议,我更改了命令,以便它捕获进程输出:
def process = "svn delete /usr/share/mydir".execute()
def out = new StringBuilder()
process.waitForProcessOutput(out, new StringBuilder())
println "$out"
我现在看到它失败的原因是:
错误svn:无法打开文件'/usr/share/mydir/.svn/lock':权限被拒绝