2

ファイルセットのコピー中に ant scp タスクがハングするという問題に遭遇しました。タスクは次のとおりです。

<scp file="${usr}:${pwd}@${hst}:${dir}/*" todir="${to}" trust="true"/>

多数のファイルを正常にコピーした後、ハングします。

コピー元のホストは localhost ですが、違いはありません。

また、同じ ant スクリプトを使用して、同じ Linux ホストから Windows マシンにファイルをコピーしましたが、これは問題なく動作します。

Google検索では、2007年頃に同様の問題があったことが判明http://www.symphonious.net/2007/10/23/ant-scpssh-task-hangs-or-never-disconnects/、にアップグレードする解決策彼らが提供するant(またはjschのダウングレード)の最新バージョンでは、問題は解決しません。(この欠陥はhttps://issues.apache.org/bugzilla/show_bug.cgi?id=41090にも記載されています)

私は ANT 1.8.2、ANT 1.7.1、および ANT 1.6.5 を使用しましたが、すべてこの問題を抱えています。jsch 0.1.44 を使用していますが、それ以降のバージョンの jsch でもこの問題が発生します。

何か案は?

4

2 に答える 2

3

私の問題を解決する回避策を見つけました。次のように、scp タスクの sftp="true" 属性を使用します。

<scp file="${usr}:${pwd}@${hst}:${dir}/*" todir="${to}" trust="true" sftp="true"/>
于 2011-08-02T05:05:06.423 に答える
2

maven-antrun-plugin でオプション sftp="true" を使用すると、次のエラーが発生しました。[エラー] Ant部分のあたり…… @: タイプが「sftp」属性をサポートしていません。

jschの古いバージョン、具体的には0.1.29に戻すことで、これを機能させることができました

      <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jsch</artifactId>
        <version>0.1.29</version>
      </dependency>
于 2013-06-14T20:05:11.543 に答える