项目中经常要从服务器一大堆文件中选择部分文件下载,如果手动选中,然后再下载的话,很容易出错。经过程序改造后,现在只要提供一些列文件名,然后用ant调用scp命令就可以远程拷贝下来了,而且避免了错误。呵呵,能省则省!能用程序实现的就不用人工。
第一步:下载依赖的jar包(jsch-0.1.44.jar)
自Ant1.60開始支持了SSH 及SCP 操作了,早在Ant之前若要支持SSH、SCP、SFTP等任務就必須下載j2ssh的j2ssh-ant.jar和j2ssh-core.jar(在http://www.sourceforge.net的j2ssh下有下載)。
現在可以使用Ant提供的Sshexec和scp任務,由$ANT_HOME/lib/ant-jsch.jar(此jar文件为ant自带,不用单独下载)提供支持,但是同樣你也要在http://www.jcraft.com/jsch/index.html下載一個依賴包jsch-0.1.44.jar(文件名因版本而不同),jsch同樣也是http://www.sourceforge.net下的一個項目。
你需要把下載的jsch-0.1.44拷貝到$ANT_HOME/lib下,如果是Eclipse下的Ant環境必須在Window->Preferences->Ant->Runtime->Classpath中加入jsch-0.1.24。
第二步:
- <target name="scp">
-
<scp
- file="root:123456@192.168.1.101:/home/root/a061.zip"
- todir="d:/zips/a061.zip" trust="true"/>
- </target>
参考文章:
http://eggboss.iteye.com/blog/515453
http://1.1.14.blog.163.com/blog/static/7290142200931203322899/
分享到:
相关推荐
SSH是一种网络协议,用于安全地在不安全的网络上执行命令和传输数据,而SCP是基于SSH的文件传输协议,提供了安全的文件拷贝功能。在Ant中集成SSH和SCP能力,可以方便地实现远程服务器的部署、文件传输等操作。 首先...
ant运行scp以及sshexec任务所必须的jar包,这是optional的,所以ant默认不会有的,需要自己加上
在Ant构建工具中,我们有时需要执行远程操作,如上传或下载文件,这通常通过SSH(Secure Shell)或SCP(Secure Copy)协议来实现。标题提到的"ant下使用ssh或者scp所需要的包"指的是在Ant任务中集成SSH和SCP功能所...
2. 在`build.xml`中编写Ant任务,包括`scp`或`ftp`任务将文件传输到远程服务器,以及`sshexec`任务执行远程命令。 3. 使用Ant命令行工具运行`build.xml`,启动构建过程。 通过这种方式,开发者可以实现快速、自动化...
自从法现 SSH 可以执行远端命令后,ftp 软件也渐渐很少用了。 每次更新服务器代码,都要打包、上传、登录到服务器修改文件权限、更新 Cache 等等,又慢又容易出错,所以做成脚本,一次帮我搞定,自己就点上一根烟坐...
4. **执行SSH任务**:运行Ant构建脚本,利用`sshexec`或`scp`等任务执行SSH操作。 总的来说,`ant-jsch-1.6.jar.zip`提供了一种方便的方式来集成Ant和JSch,从而让Java开发者能够在构建流程中无缝地执行SSH操作,...
2. **定义任务**:在`build.xml`中定义JSch相关的任务,例如创建一个`scp`任务用于文件传输,或者`sshexec`任务用于执行远程命令。这些任务需要配置相应的属性,如主机名、端口、用户名、密码或密钥文件等。 3. **...
在这个例子中,`scp`任务将`localfile.txt`复制到远程服务器的`/remotedir/`目录下,而`sshexec`任务则在远程主机上执行`chmod`命令改变文件权限。 【jsch-0.1.53.jar】是JSch库的版本号为0.1.53的JAR文件,包含了...
Ant不仅适用于Java项目,也可以处理其他类型的项目,因为它可以执行各种操作系统命令。 2. **jar文件**:`.jar`是Java Archive的缩写,它是Java平台的标准打包格式,用于封装类库、资源和元数据。在Ant项目中,`...
- 使用`<sshexec>`任务执行远程命令,如`cd /path/to/tomcat/webapps && mv warfile.war appname.war`,然后启动或重启Tomcat服务。 5. **运行Ant脚本**:在Eclipse中,右键点击`build.xml`,选择`Run As` -> `Ant...
ANT通过执行scp命令,利用SSH连接到远程服务器,并使用已授权的密钥对进行身份验证,然后加密传输文件。这种方式适用于定期的自动化部署,因为可以避免每次都输入密码。 2. SSH通道方式:这种方式使用SSH建立一个...
例如,`<tstamp>`任务可以用来设置日期和时间属性,`<mkdir>`用于创建目录,`<exec>`可以执行系统命令,而`<ftp>`或`<scp>`则可以用于文件的远程传输。 学习和掌握ANT对于Java开发者来说至关重要,因为它能提高开发...
SSH2集成了Secure Copy (SCP)、Secure File Transfer Protocol (SFTP)、远程命令执行等功能,是开发人员在部署和管理分布式系统时的重要工具。而Ant是一个由Apache软件基金会开发的Java构建工具,它使用XML来定义...
对于Web应用,可能需要启动如Tomcat这样的服务器,这通常通过执行服务器的启动脚本来完成,可以在Ant中用`exec`任务来实现。 **部署**: 在Java Web应用中,部署通常意味着将WAR或EAR文件复制到应用服务器的webapps...
在Ant中使用`scp`任务时,你需要这个jar包作为依赖,以便能够通过SSH连接到远程服务器并执行文件传输。JSch不仅实现了SSH2的连接,还包括了密钥管理、会话管理、文件传输等功能。 为了在Ant中使用`scp`任务,你需要...
1. 使用SCP或SFTP将ANT打包生成的文件传输到Linux服务器的指定目录。 2. 使用SSH登录服务器,切换到部署目录。 3. 运行解压命令(如tar -zxvf 或 unzip)解压文件。 4. 如果是Tomcat等应用服务器,需要将解压后的...
通过运行`ant deploy`命令,即可实现从编译到启动的全程自动化。 总结,Ant作为强大的构建工具,能够帮助开发者实现项目构建的自动化,提高工作效率。通过编写和配置`build.xml`文件,我们可以定制化各种构建任务,...
4. **提供良好的帮助说明**:通过在任务中添加描述属性,使得`ant -projecthelp`命令可以显示任务列表。对于复杂的内部任务,可以使用XML注释或创建一个名为`help`的任务来提供详细的使用指南,方便团队成员查阅。 ...
而JSCH(JSch)则是一个Java实现的SSH2库,允许用户进行安全的远程执行命令、文件传输、端口转发等功能。 标题“ant-jsch-1.6.4.jar.zip”表明这是Ant与JSCH的一个特定版本——1.6.4的集成包,其中包含了一个名为...
- **部署应用程序**:编写Ant脚本中用于部署应用程序的部分,例如使用`<scp>`命令将打包好的文件复制到远程服务器上。 #### 五、持续集成的最佳实践 1. **持续改进**:持续集成不仅仅是一次性的设置,而是需要...