2

我们正在使用 SVN ant 任务从 Linux 上的 SVN 导出项目

<target name="export-from-svn">
    <svn refid="svn.settings">
        <export srcUrl="${svn.url}" destPath="path" />
    </svn>
</target>

以前它工作正常,没有任何错误。没有任何改变,但是现在它被卡住了,没有任何错误或警告。有什么方法可以启用更详细的输出。如果我手动执行命令“export -r HEAD ...”它工作正常。

export-from-svn:
      [svn] Missing 'javahl' dependencies on the classpath !
      [svn] Using svnkit
      [svn] <Export> started ...
      [svn] export -r HEAD https://from /home/to
4

2 回答 2

1

似乎没有属性可以在svn任务中启用更详细的日志记录。您可以尝试使用ant -verbose .... 但是,既然您说任务“卡住”了,那么您可能需要对进程进行线程转储以检查 JVM 中线程的状态。您可以将 Ant 构建定位为 Java 进程并运行jstack <pid>以转储线程。

于 2015-05-01T19:24:37.150 回答
0

有同样的问题,所以留下对我有用的东西,以防其他人有同样的问题。

花了几个小时尝试调试 svnant 任务,然后最后查看 svnant 任务的线程转储,发现线程在建立 ssl 连接时卡住了。任务管理器中相应的 java.exe 进程正在旋转,但不会引发任何错误。

要解决此问题,请转到 svn 服务器设置并更改设置以允许除 TLS 1.0、TLS 1.1 和 TLS 1.2 之外的已弃用的 SSL 3.0 协议。请注意,不建议这样做,因为使用旧协议会带来明显的安全风险。但是,如果您的 ant 客户端是旧的并且直到您有机会更新您的客户端(出于安全原因强烈推荐),那么允许 svn 服务器中的旧协议将使 svn ant 任务再次工作。

于 2017-08-21T20:41:01.753 回答