从Java保存到subversion存储库

时间:2009-06-24 07:10:35

标签: java svn unix command runtime.exec

我想保存到subversion存储库。

我正在使用命令--svn commit -m \“\”./cms_test/www

我的课程是:

public int doBackup(){
    int exitVal=-99;
  try
  {            
      Runtime rt = Runtime.getRuntime();
      Process proc = rt.exec("svn commit -m \"\" ./cms_test/www");
      exitVal = proc.exitValue();
      System.out.println("Process exitValue: " + exitVal);
  } catch (Throwable t)
    {
      t.printStackTrace();
    }
  return exitVal;
}

这应该有用吗,还是我需要做的其他事情。

2 个答案:

答案 0 :(得分:11)

为什么不使用SVNKit之类的内容?

  

SVNKit是一个纯Java工具包 - 它实现了所有Subversion功能,并提供了API来处理Subversion工作副本,访问和操作Subversion存储库 - Java应用程序中的所有内容。

好处是:

  • 不依赖于安装的subversion二进制文件;
  • 正确的错误传播到Java代码,而不是检查返回代码和解析输出;
  • 更容易使用更高级的用例;

所有加上学习新API的有趣因素。

答案 1 :(得分:1)

可能有效,但请确保已经对您的svn服务器进行了身份验证,并在调用doBackup()方法之前调用另一种更新修订版的方法。