Domanda

Sto cercando di eseguire un diff su due URL svn usando SVNkit. Il problema è che viene visualizzato l'errore quando viene chiamato diff.doDiff .

  

org.tmatesoft.svn.core.SVNException: svn: Impossibile creare   SVN Oggetto repository per   ' http://svn.codehaus.org/jruby /trunk/jruby/src/org/jruby/Finalizable.java '     a   org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error (SVNErrorManager.java:55)     a   org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error (SVNErrorManager.java:40)     a   org.tmatesoft.svn.core.io.SVNRepositoryFactory.create (SVNRepositoryFactory.java:199)     a   org.tmatesoft.svn.core.wc.DefaultSVNRepositoryPool.createRepository (DefaultSVNRepositoryPool.java:213)     a   org.tmatesoft.svn.core.wc.SVNClientManager.createRepository (SVNClientManager.java:242)     a   org.tmatesoft.svn.core.wc.SVNBasicClient.createRepository (SVNBasicClient.java:231)     a   org.tmatesoft.svn.core.wc.SVNDiffClient.doDiffURLURL (SVNDiffClient.java:769)     a   org.tmatesoft.svn.core.wc.SVNDiffClient.doDiff (SVNDiffClient.java:310)     su SVNTest.main (SVNTest.java:30)

Ho ricontrollato gli URL (posso aprirli nel client TortoiseSVN). Qualcuno può aiutarmi a sapere cosa sta succedendo? Ho pubblicato il codice che sto eseguendo di seguito.

SVNClientManager manager = SVNClientManager.newInstance(SVNWCUtil.createDefaultOptions(false), user, pass);

SVNDiffClient diff = manager.getDiffClient();
    //ISVNDiffStatusHandler diffStatus = new ISVNDiffStatusHandler();

try {
SVNURL oldURL = SVNURL.parseURIDecoded(url);    
diff.doDiff(SVNURL.parseURIDecoded(url), SVNRevision.create(oldVersion), SVNURL.parseURIDecoded(url), SVNRevision.HEAD, false, false, System.out);
} catch (SVNException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
È stato utile?

Soluzione

hai chiamato il seguente metodo statico?

  

DAVRepositoryFactory.setup ();

Questo deve essere chiamato prima di accedere a qualsiasi repository http: // e simili

  

SVNRepositoryFactoryImpl.setup ();

dovrebbe essere usato per i repository svn: // .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top