Ant scp任务失败

use*_*228 13 ant scp

我有一个要求:将本地文件复制到远程系统.我做了以下事情:

  1. 下载了jsch-0.1.44.jar并复制到Ant的lib文件夹中
  2. 设置路径和每件事

我的构建文件是:

<project name="ImportedBuild" default="all">
  <target name="copyFileToRemote">
    <echo>2222222222 copyFileToRemote Examples:::::::::::::</echo>
    <scp file="sample.txt" todir="${username}:${password}@${hostname}:/shared"/>
  </target>
</project>
Run Code Online (Sandbox Code Playgroud)

当我运行Ant时,我收到此错误:

BUILD FAILED com.jcraft.jsch.JSchException: reject HostKey: 10.184.74.168
    at com.jcraft.jsch.Session.checkHost(Session.java:712)
    at com.jcraft.jsch.Session.connect(Session.java:313)
    at com.jcraft.jsch.Session.connect(Session.java:154)
    at org.apache.tools.ant.taskdefs.optional.ssh.SSHBase.openSession(SSHBase.java:212)
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.upload(Scp.java:291)
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.execute(Scp.java:203)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
    ... etc ...
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决这个问题?

mar*_*ton 36

根据Ant scp任务文档,trust属性:

如果设置为yes/true,则信任所有未知主机.注意如果将此参数设置为false(默认值),则连接到的主机必须列在knownhosts文件中,这也意味着该文件存在.

trust您的任务调用中未使用该属性,因此主机(10.184.74.168)似乎不在您的knownhosts文件中.建议您添加trust="true"或添加主机到knownhosts文件.

  • 我也给了它......仍然显示同样的错误 (3认同)