Cannot find javahl, svnkit nor command line svn client

来源:互联网 发布:汤姆索亚历险记 知乎 编辑:程序博客网 时间:2024/05/01 06:56

在使用Ant脚本Check Out代码时(SVN),遇到error,

Cannot find javahl, svnkit nor command line svn client,


Ant本身是不能Check out的,它只能借助于其他工具,可供选择的工具有三种,JavaHL, SVNKIT 和客户端的SVN Client.

在ANT脚本中,是可以配置这三种方式的,

<target name="-ant-task" depends="-retrieve-svntask">
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml">
<classpath>
<path refid="svntask.classpath" />
</classpath>
</typedef>
<svnSetting svnkit="false" javahl="false" id="svn.settings" />
<!-- native svn in the path-->
</target>


上面的写法,<svnSetting svnkit="false" javahl="false" id="svn.settings" />, SVNKIT,JavaHL都是关掉的,如果机器上没有安装SVN Client软件,就会报错,

报Cannot find javahl, svnkit nor command line svn client的错误。


SVNKIT和JavaHL在哪儿?

在Eclipse里安装Subversion, 可以选择安装SVNKIT和JavaHL。

所以如果安装了Subversion,Eclipse环境应该是可以找到SVNKIT和JavaHL的。但是Ant不一定能找到,所以要把SVNKIT或者JavaHL的jar包放到Ant的Lib库里。


SVNKIT和JavaHL的Jar包可以在Eclipse的plugins文件夹找到,拷贝到Ant的lib库里。

也可以在Ant脚本中检查,然后自动下载,具体方法略。


有了SVNKIT和JavaHL的Jar包后,就可以修改build.xml, <svnSetting svnkit="false" javahl="true" id="svn.settings" />或者<svnSetting svnkit="true" javahl="false" id="svn.settings" />.这样在Ant脚本里写的SVN命令就可以执行了。



最后, Ant和Eclipse的集成真的是很稳定, 比Maven强多了。如果单纯是源代码版本控制和Dependency管理,Mavan确实不错。但是设计到后期的Build和Deploy, 我宁愿所有项目都是Ant管理的。

原创粉丝点击