使用svnkit 1.8 embedded检出失败:没有为此文件记录校验和

时间:2014-06-12 15:14:37

标签: svn intellij-idea svnkit

从本周开始,我正在处理一个奇怪的错误。 我有一个使用svnkit 1.8的应用程序无法从svn签出项目。引发以下错误:

svn: E155017: Cant install "a file" from pristine store, because no checksum is recorded for this file

经过一些调试后,我发现svn服务器返回了这个错误。请注意,自从我将svnkit从1.7升级到1.8后出现此错误。

这是我目前的配置:

  • 我的应用程序使用svnkit 1.8
  • svn服务器与svn 1.6
  • 我的电脑上的Cntlm使用代理
  • Ubuntu 14.04 with svn 1.8

如果我在命令行中检查项目,那就可以了。

最后但并非最不重要的是,当我在Intellij中启动我的应用程序时,一切正常!

我不知道该怎么做了。 谢谢你的帮助。

编辑:我回答自己。

似乎我的问题与新的" .svn行为有关"与svn 1.7一起介绍。 激活svnkit log告诉我它无法找到wc.db ...因此,我使用SVNRepository.getFile()来检查我的文件。

1 个答案:

答案 0 :(得分:1)

我设法很快解决了这个问题。
我们将SVN服务器更新为1.8,因此我将旧版svnkit-1.7.8.jarsvnkit-javahl16-1.7.8.jarsvnkit-cli-1.7.8更新为1.8版0.6。

编译和测试后,我遇到了与上述相同的问题。

问题很简单。我没有更新任何其他svnkit依赖项,例如以下三个库:

jna-3.4.0.jarjna-4.1.0.jar
sqljet-1.1.6.jarsqljet-1.1.10
sequence-library-1.0.2.jarsequence-library-1.0.2.jar

将这些库更新为更新的库(我从我下载的here的svnkit独立版本中获取它们)它完全正常。
似乎svnkit不会检查任何依赖版本,因此在使用过时的库时不会抛出任何错误。