SVNKit não pode criar SVNRepoitory
Pergunta
Eu estou tentando executar um diff em duas urls de svn usando SVNKit. O problema é que eu recebo o erro quando diff.doDiff
é chamado.
org.tmatesoft.svn.core.SVNException: svn: Não é possível criar objeto SVNRepository para ' http://svn.codehaus.org/jruby /trunk/jruby/src/org/jruby/Finalizable.java ' em org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error (SVNErrorManager.java:55) em org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error (SVNErrorManager.java:40) em org.tmatesoft.svn.core.io.SVNRepositoryFactory.create (SVNRepositoryFactory.java:199) em org.tmatesoft.svn.core.wc.DefaultSVNRepositoryPool.createRepository (DefaultSVNRepositoryPool.java:213) em org.tmatesoft.svn.core.wc.SVNClientManager.createRepository (SVNClientManager.java:242) em org.tmatesoft.svn.core.wc.SVNBasicClient.createRepository (SVNBasicClient.java:231) em org.tmatesoft.svn.core.wc.SVNDiffClient.doDiffURLURL (SVNDiffClient.java:769) em org.tmatesoft.svn.core.wc.SVNDiffClient.doDiff (SVNDiffClient.java:310) em SVNTest.main (SVNTest.java:30)
Eu dobro verificado as URLs (eu posso abri-los no cliente TortoiseSVN). Alguém pode me ajudar saber o que está acontecendo? Tenho postado o código que eu estou correndo abaixo.
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();
}
Solução
Você ligou para o seguinte método estático?
DAVRepositoryFactory.setup ();
Isso precisa ser chamado antes de acessar todos os repositórios http://
eo semelhantes
SVNRepositoryFactoryImpl.setup ();
deve ser usado para repositórios svn://
.