JavaHL是Subversion项目的一部分。具体而言,它是为Subversion的API在Java语言绑定。Subversion提供了一种分层的本地库(DLL)提供的API设计。Subversion命令行仅仅是一个消费者的这个API。API是丰富的功能,但也保持向后兼容。这就是为什么有这么多伟大的Subversion客户端和可用的工具,因为有一个丰富和稳定的API,它提供了所有你需要的功能。
Subversion是用C写的,提供优秀的跨平台的支持,但也因为C生产从几乎任何其他的语言,很容易消耗的图书馆。Subversion项目提供并维护语言为Java,Perl,Python和Ruby的绑定。后三种是通过SWIG库和界面语言与本地库的能力。JavaHL是一个“高层次”的API,并提供自定义编写的C + +代码作为JNI的Java代码和本机库之间的桥梁。这样的设计让我们到Subversion提供了一个很好的Java API。
JavaHL基本上由四部分组成:
所有这些层的需要JavaHL工作,并在应用程序中使用。
Subclipse的是用Java编写的,所以它需要能够使用Subversion的API使用了JavaHL库。Subclipse的Java层的JavaHL。如果你看一下以前的条目,你会看到,JavaHL需要3层的实际工作(主要是原生库)。
在Windows中,我们会提供你需要的一切。由于技术原因,我们不能做到这一点,任何其他操作系统。它必须在不同的操作系统如何加载本地库。有没有办法提供所有的原生层的方式使用时,会发现从Java和Eclipse的图书馆。他们被发现的唯一方法是,如果他们正确地安装在这些操作系统寻找图书馆的具体位置。Windows库加载的,我们能够利用从Java有一个怪癖。基本上,我们可以以相反的顺序加载的依赖,那么作为我们每一个库,因为它的依赖已经加载到内存中加载,加载程序不会试图加载它们。
解决方法:
1.Eclipse->preferences->Team->SVN
2.选择SVNKit (Pure Java) xxxxxx
如下图所示
重启之后不再报错。