4

我下载并安装了 SVNAnt 1.3.0、Ant 1.8 和 Java 1.6。

当我尝试通过 https 进行简单结帐时,我得到一个 java.lang.NoClassDefFoundError: com/trilead/ssh2/InteractiveCallback。我不确定为什么它使用 ssh 类,因为我使用的是 https。

用于 Java 的 Trilead SSH 似乎不再受支持或分发,而且我无法访问旧版本的 trilead.jar。

没有 trilead.jar 的其他人如何使用 SVNAnt?有没有人建议追求任何其他选择?这是我的构建脚本。项目的打开和结束标签没有正确复制,但是当我在本地机器上执行它时它们就在那里。

更新 经过一番谷歌搜索后,我能够在另一个项目的 svn 存储库中找到 trilead.jar,它确实修复了 NoClassDefFoundError 太糟糕了,Trilead 不会分发 jar。

<?xml version="1.0"?>

<property name="svn.base" value="C:\Program Files\svnant\svnant-1.3.0"/>
<property name="svn.lib" value="${svn.base}/lib"/>
<property name="username" value="user"/>
<property name="password" value="password"/>

<path id="svnant.classpath" >
  <fileset dir= "${svn.lib}" >
     <include name= "*.jar" />
  </fileset>
</path>

<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.classpath" />

<target name="checkout">

   <svn username="${username}" password="${password}" >
      <checkout url="https://svn-server/svn/project" destPath="C:\SVNRepositories\checkout" />
   </svn>

</target>

4

3 回答 3

2

你可以从这里下载它:http ://www.findjar.com/jar/com/trilead/trilead-ssh2/build213-svnkit-1.3-patch/trilead-ssh2-build213-svnkit-1.3-patch.jar.html

于 2010-06-09T08:04:05.567 回答
1

我不得不从我的 svnant 类路径中删除 svnkkit.jar。我正在使用 subant 进行多次结帐,第二次结帐使用 svnkit 而不是 javahl。这适用于 ant 1.7、java6 和 svnant 1.30。

<path id="svnant.classpath">
    <fileset dir="./buildBinaries/svnant-1.3.0/lib">
        <include name="*.jar" />
        <exclude name="svnkit.jar"/>
    </fileset>
</path>
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.classpath" />
于 2012-02-03T12:25:03.947 回答
0

我在设置 SVNAnt 时遇到了类似的问题。我写了一篇博文,描述了如何解决这个问题:

http://www.willjohnson.me/blog/?p=128

于 2011-06-16T14:59:47.977 回答