我正在尝试通过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_HOME/lib
目录中有ant-jsch-1.9.4.jar
。当我试图在Windows DOS命令提示符中运行Ant命令时。当运行命令ant scp_task
时,我得到的消息为
BUILD FAILED: c: users user。sshknown_hosts(系统无法找到指定的文件)
请帮助我还应该为代码添加什么,以便我可以完美地部署我的war文件
您必须使用远程服务器的公共主机密钥在给定路径中创建known_hosts
文件。
文件使用常见的OpenSSH格式,如:
example.com,93.184.216.34 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
您也可以跳过主机密钥验证,但仅当您不关心安全性(例如,如果您在私有网络中连接)。
<scp trust="true" .../>
参见SCP任务文档