从Java保存到subversion存储库

从Java保存到subversion存储库,java,svn,unix,command,runtime.exec,Java,Svn,Unix,Command,Runtime.exec,我想保存到subversion存储库 我正在使用命令-svncommit-m\“\”/cms\u test/www 我的班级是: public int doBackup(){ int exitVal=-99; try { Runtime rt = Runtime.getRuntime(); Process proc = rt.exec("svn commit -m \"\" ./cms_test/www"); exitV

我想保存到subversion存储库

我正在使用命令-svncommit-m\“\”/cms\u 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;
}

这是可行的,还是我还需要做其他事情。

为什么不使用类似的方法

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

好处是:

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

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

它可能会运行,但请确保已通过svn服务器的身份验证,并在调用
doBackup()
方法之前调用另一个方法更新修订版。

我已经使用过SVNKit多次,这是一个设计非常好的库,支持maven,我同意。不必被迫使用SVN二进制文件是一个巨大的优势,您将变得独立于平台。正如智者所说,为什么要重新发明轮子?斯文基特岩石。