SVNClient.logMessages永远不会返回结果
问题描述:
我正在使用JavaHL连接到1.6 svn回购。尽管我设法列出了存储库的内容,但我无法获取项目历史记录(对支票以及日期和作者所做的评论)。SVNClient.logMessages永远不会返回结果
据我所见,SVNClient.logMessages是正确的方法,但回调方法永远不会被执行。我使用了Revision.HEAD作为路径修订版,并使用了Revision.START和Revision.HEAD的版本范围对象;该限制设置为0(根据文档没有限制)。我正在尝试获取修订版本,日期,作者和评论。
如果有人知道关于使用JavaHL的示例代码,我可能会通过将该代码与我的代码进行比较来找到我的错误。
顺便说一句:我知道SVNKit,但管理层决定不买它。因此我必须使用JavaHL,其中不存在示例程序(并且文档仅仅列出类和接口而没有非常详细的描述)。所以,请将我指向SVNKit的这个方向,因为这对我来说是不可能的。
任何指针赞赏。
gnarf
答
该问题已解决。问题在于对SVNClient.logMessages()的调用,尤其是使用的版本范围。
起始修订版本是Revision.START,根据文档,它用于描述“第一个现有修订”。
当我使用Revision.getInstance(1)代替时,问题消失。因为任何项目都至少有一个修订版本(最初的版本)是合理的,所以应该使用它来保存。
希望这可以帮助其他人花费两天半的时间解决问题!
Gnarf
该问题已解决。问题在于对SVNClient.logMessages的调用,尤其是使用的版本范围。第一次修订已被描述为Revision.START。但是,尽管给出了Revision.START的说明,Revision.getInstance(1)终于使其工作。 – Gnarf 2011-05-04 14:29:44