SVNkit は SVNRepository を作成できません
質問
SVNkitを使用して2つのSVN URLの差分を実行しようとしています。問題は、次の場合にエラーが発生することです diff.doDiff
と呼ばれます。
org.tmatesoft.svn.core.SVNException:SVN:'のsvnrepositoryオブジェクトを作成できませんhttp://svn.codehaus.org/jruby/trunk/jruby/src/org/jruby/Finalizable.java'at org.tmatesoft.svn.core.internal.wc.svnerrormanager.error(svnerrormanager.java:55)at org.tmatesoft.svn.core.internal.wc.svnerrormanager.error(svnerrormanager.java:40) tmatesoft.svn.core.io.svnrepositoryfactory.create(svnrepositoryfactory.java:199)at org.tmatesoft.svn.core.wc.defaultsvnrepositorypool.createrepository(defaustvnrepositorypool.javapool.java:213) svnclientmanager.createrepository(svnclientmanager.java:242)at org.tmatesoft.svn.core.wc.svnbasicclient.java:231)at org.tmatesoft.svn.core.crient.diff.diff.diff.svn.core.diff.svn.core.diff.svn.core.diff.diff.svn.core.diff.diff.svn.core.diff.diff.diff.diff.svn.core .java: 769)atorg.tmatesoft.svn.core.wc.svndiffclient.dodiff(svndiffclient.java:310)at svntest.main(svntest.java:30)
URL を再確認しました (TortoiseSVN クライアントで開くことができます)。何が起こっているのかを知るのを手伝ってくれる人はいますか?私が実行しているコードを以下に投稿しました。
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();
}
解決
次の静的メソッドを呼び出しましたか?
DAVRepositoryFactory.setup();
これは、アクセスする前に呼び出す必要があります。 http://
リポジトリおよび類似のもの
SVNRepositoryFactoryImpl.setup();
に使用する必要があります svn://
リポジトリ。