我正在尝试通过Ant构建XML文件自动化部署过程。我的Ant版本为1.9.4。作为其中的一部分,我试图将构建的war文件发送到远程Tomcat服务器。所以,我使用下面的SCP任务代码。
<target name="scp_task">
<scp file="antproject1.war" todir="${username}@${ipaddress}:${tomcat.webapps.dir}" password="${password}"/>
</target>
我的ant-jsch-1.9.4.jar
目录中有ANT_HOME/lib
。当我试图在Windows DOS命令提示符下运行Ant命令时。运行命令ant scp_task
时,我收到消息为
BUILD FAILED:C:\ Users \ USER.ssh \ known_hosts(系统找不到指定的文件)
请帮助我为代码添加其他内容,以便我可以完美地部署war文件。
答案 0 :(得分:2)
您必须使用远程服务器的公共主机密钥在给定路径中创建known_hosts
文件。
该文件使用常见的OpenSSH格式,如:
example.com,93.184.216.34 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
您也可以跳过主机密钥验证,但前提是不关心安全性(例如,如果您要在专用网络中进行连接)。
<scp trust="true" .../>