背景:
ant生成jar包之后,每次都要往目标机器上拷贝部署,真是难受。
本机又是Windows ,运行机器是linux,如何办?来个共享?安装samba?
高人指点,采用ftp,要去配置个ftp还是不爽的事情,想既然ant支持ftp肯定考虑支持sftp等关于ssh的功能,一查发现,果然还是支持的。兴奋!
一、寻找资源文件
看ant的文档:
http://ant.apache.org/manual/Tasks/scp.html
在依赖的jar包列表 http://ant.apache.org/manual/install.html#librarydependencies 中找到
jsch.jar 0.1.42 or later
进入http://www.jcraft.com/jsch/index.html 找到下载地址:http://sourceforge.net/projects/jsch/files/jsch/jsch-0.1.43.jar/download
源码地址:http://sourceforge.net/projects/jsch/files/jsch/jsch-0.1.43.zip/download
二、测试可行性
下载后,放入自己的ant下的lib文件夹下,如果是eclipse需要加入运行环境window->preferences->ant->runtime->classpath中加入jsch-0.1.43.jar
例子,可以采用http://ant.apache.org/manual/Tasks/scp.html里面的examples,还挺全的,拷贝单个文件,拷贝文件夹,设置密码,设置私钥等
scp
下面亲自测试几个:
<target name="scp-file">
<scp file="jar/fetch.jar" todir="uu:123@192.168.0.175:/home/uu/fetch" />
</target>
<target name="scp-folder">
<scp todir="uu:123@192.168.0.175:/home/uu/fetch" >
<fileset dir="jar"/>
</scp>
</target>
com.jcraft.jsch.JSchException: reject HostKey: 192.168.0.175
会有以上的异常,奇怪的官方文档不说。要求你所连接的host必须存在于你的knownhosts文件中,并且 这个文件也必须是存在的,否则会出现上面的异常。
解决方法:
<target name="scp-file">
<scp file="jar/fetch.jar" todir="uu:123@192.168.0.175:/home/uu/fetch" trust="true"
/>
</target>
<target name="scp-folder">
<scp todir="uu:123@192.168.0.175:/home/uu/fetch" trust="true"
>
<fileset dir="jar"/>
</scp>
</target>
sshexec
再测试一下诱惑人的可执行shell功能,文档地址;http://ant.apache.org/manual/Tasks/sshexec.html
<target name="sshexec">
<sshexec host="192.168.0.175"
username="uu"
password="123"
command="touch somefile;ls;df -h;" trust="true"/>
</target>
若个命令可以用;号隔开。
关于拷贝远程到本地,拷贝本地到远程,选取特定文件等等,都是变通可行的,本文就不再演示了。
分享到:
相关推荐
Axure ant design pro后台模板可交互
NULL 博文链接:https://crane-ding.iteye.com/blog/335153
可以实现ant下使用ssh或者scp,具体的实现可以参见实例。
全面的ant使用手册~!内容如下: · Ant 生成文件是如何构造的 · 如何从命令行以及从Eclipse 内运行Ant · 如果通过编译源代码、创建 JAR 文件以及时间戳文件(以识别每次生成过程的输出)来生 成简单的 Java 项目 ...
ANT使用指南ANT使用指南ANT使用指南ANT使用指南ANT使用指南ANT使用指南ANT使用指南ANT使用指南ANT使用指南
Ant安装build手册—LINUX Ant安装build手册—LINUX Ant安装build手册—LINUX
准备工作: 1、安装 ant:把 ant 解压到本地硬盘 c:\ant 2、设置环境变量:ANT_HOME:c:\ant 。 PATH:在原来的 PATH 开头加上 c:\ant\bin; 3、一个 ant 项目目录结构: c:\HelloWorld :项目主目录 \src :源...
ant 使用入门ant 使用入门ant 使用入门ant 使用入门
赠送jar包:ant-1.9.1.jar; 赠送原API文档:ant-1.9.1-javadoc.jar; 赠送源代码:ant-1.9.1-sources.jar; 赠送Maven依赖信息文件:ant...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
ant的配置文件ant的配置文件ant的配置文件ant的配置文件
SSH2集成+ant打包,一个让人一目了然的实例!
使用ant对cvs不同版本进行比较时,对其环境的支持!
linux版本的ant
ant安装文件包括windows版本和linux版本,另外有ant使用模板配置文件
赠送jar包:ant-1.10.1.jar; 赠送原API文档:ant-1.10.1-javadoc.jar; 赠送源代码:ant-1.10.1-sources.jar; 赠送Maven依赖信息文件:...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
NULL 博文链接:https://yzz9i.iteye.com/blog/1580020
ant远程调用shell,启动linux上的tomcat,包括启动tomcat的shell和本地的ant文件,供参考
*在Ant中通过SSH上传一个/多个文件。 *在Ant中通过SSH下载一个/多个文件。 由于不需要外部库即可添加到您的Ant安装中,因此类加载更加简单。 所有库都存储在您的项目目录中,而不是您的Ant安装中。
这是一个ANT自编译的程序,可以在myeclipse下创建ant文件,根据代码配置,下载后直接可以用。
ant ant ant antant ant ant antant ant ant ant