`
tmj_159
  • 浏览: 707487 次
  • 性别: Icon_minigender_1
  • 来自: 永州
社区版块
存档分类
最新评论

Ant 利用jcraft实现自动化打包, 和启动服务

 
阅读更多

  之前我有写过ant的基本使用,以及一些常用配置,如果这些不懂,可以参考下本人的前些年写的文章

   Ant的基本使用 以及Ant的常用配置

 

    这篇文章主要讲如何利用jcraft来完成ant的远程拷贝文件以及执行远程脚本的功能来完成我们在项目中实现自动部署的一些事情。

 

    首先介绍下JCraft,它是纯java实现的SSH2, 较高版本的ant就用到了这个库。我们在build.xml文件中如果用到了类似sshexec, scp这样的命令就需要用到这个库。

 

    打开主页 http://www.jcraft.com/jsch/ 往下一翻翻就能找到下载的地方。下载之后,我们要配置类加载路径才能用, 打开eclipse->preferences->ant->runtime->classpath 将下载的类放入到classpath中,如下图



 

 

加好之后我们就用相关的命令了,如下面,我执行远程机器中的stop.sh来停止相关服务,然后我拷贝新打好的jar到远程机器,最后再启动这个服务。

<target name="zip" depends="buildjar">
		<!--
		<zip destfile="${build}/${project.name}.zip" basedir="${build}" />
		-->
		<sshexec host="${server}" username="${user}" password="${pwd}" trust="true" command="/opt/service/stop.sh">
		</sshexec>

		<scp todir="${user}:${pwd}@${server}:${path}" trust="true" verbose="true">
			<fileset dir="${build}/">
				<include name="${file.name}" />
			</fileset>
		</scp>

		<sshexec host="${server}" username="${user}" password="${pwd}" trust="true" command="/opt/service/oa/start.sh">
		</sshexec>
	</target>

 

 附上ant 手册

http://ant.apache.org/manual/

 

 

  • 大小: 28.1 KB
分享到:
评论

相关推荐

    SSH2集成+ant打包

    本实例主要探讨如何将SSH2与Ant结合,实现自动化部署和打包流程。SSH2的集成使得我们可以通过安全的方式在本地与远程服务器之间传输文件,例如部署应用程序或更新资源。Ant则负责编译源代码、生成JAR或WAR文件,以及...

    JCRAFT API介绍

    **正文** 《JCRAFT API详解:开启Java加密与网络编程新旅程》 在Java编程世界中,JCRAFT是一个不可或...通过深入学习和实践,你可以更好地利用JCRAFT来应对各种复杂的编程挑战,为你的项目带来更安全、更高效的服务。

    com.jcraft.jsch

    开发者可以利用这个库在Java应用程序中建立SSH连接,进行远程执行命令、文件传输、端口转发等操作,广泛应用于运维自动化、远程服务调用等场景。 在使用jsch库前,我们需要了解一些基本概念。SSH连接通常涉及以下几...

    jcraft-jsch.zip

    3. **文件传输**:JSch支持SFTP(SSH File Transfer Protocol),允许用户在本地和远程系统之间安全地传输文件,这对于自动化部署或者备份场景非常关键。 4. **端口转发**:JSch还实现了SSH的端口转发功能,可以将...

    jcraft数据上传jar包

    4. **错误处理和重试机制**:在上传过程中,可能会遇到网络中断、服务器错误等问题,因此,好的上传库会包含错误处理代码,可能还包括自动重试策略。 5. **安全性**:在涉及到HTTPS时,会用到SSL/TLS协议进行加密,...

    com.jcraft.jschjar和commons-net

    JSch(Java Secure Channel)是由JCraft公司开发的一个开源Java库,它实现了SSH2协议,允许Java应用程序进行安全的远程登录、文件传输和执行命令。JSch的核心功能包括: 1. **SSH连接**:JSch提供了一套API,使得...

    利用com.jcraft.jsch进行SFTP下载文件

    利用com.jcraft.jsch进行SFTP下载文件,方便简单快捷操作SFTP

    com.jcraft.jsch_0.1.31.jar和commons-net-3.2.jar

    和`commons-net-3.2.jar`是Java开发中的两个重要工具,分别处理SSH连接和多种网络协议,它们在各种分布式系统、自动化运维、数据同步等领域有广泛应用。通过深入理解和使用这两个库,开发者可以创建高效、安全的网络...

    jcraft源代码,java连接SSH

    jcraft源代码提供了一个纯Java实现的SSH连接解决方案,包括SFTP文件传输和执行远程shell命令的功能。对于需要在Java应用程序中与Linux服务器进行安全交互的开发者来说,这是一个宝贵的资源。通过对源代码的学习,...

    ant-jsch.jar.zip

    总之,Ant-Jsch.jar.zip提供了一个方便的组合,将Ant的构建管理和JSch的SSH2功能结合在一起,使得开发者可以轻松地在Java项目中实现自动化构建和安全的远程操作。无论是对本地代码的编译打包,还是对远程服务器的...

    com.jcraft.jsch_0.1.31

    com.jcraft.jsch.RequestShell.class com.jcraft.jsch.RequestAgentForwarding.class com.jcraft.jsch.Random.class com.jcraft.jsch.RequestSignal.class com.jcraft.jsch.Compression.class ...

    java操作linux实例(含jcraft jar包)

    在这个实例中,我们将利用Java来实现SSH连接,通过JCraft的jsch库进行Linux系统的登录和命令执行。 JCraft是一个提供SSH2协议实现的Java库,其中包含的`jsch-0.1.54.jar`是本次实例的关键。这个jar包提供了Java程序...

    ant获取SVN版本信息的jar包xmltask以及安装,使用方法

    总的来说,结合Ant、XMLTask和SVN,我们可以创建一个自动化流程,不仅能够获取SVN版本信息,还能根据这些信息进行进一步的操作,如报告、测试或构建控制。这个过程体现了构建工具的强大和灵活性,也展示了Java生态...

    com.jcraft.jsch_0.1.31.jar

    实现SFTP操作的利器》 在Java开发中,远程文件传输是一个常见的需求,而SFTP(Secure File Transfer Protocol)作为SSH(Secure Shell)的一部分,提供了安全的文件传输功能。com.jcraft.jsch_0.1.31.jar是一款用于...

    ant-jsch-1.7.1.jar.zip

    在Java开发领域,Ant作为一款自动化构建工具,广泛应用于项目的构建、打包和部署等任务。而JSch则是一个纯Java实现的SSH2库,它允许Java应用程序连接到远程服务器,执行SFTP(Secure File Transfer Protocol)操作,...

    com.jcraft.jsch_0.1.31.jar commons-net-3.2.jar

    SSH2是一种广泛用于在网络中提供安全远程登录和其他服务的协议。JSch库允许Java应用程序通过SSH2协议连接到远程服务器,执行命令,传输文件,并支持SFTP(SSH File Transfer Protocol)。在FTP场景中,如果需要更...

    jcraft 的 JZlib 包

    JZlib is a re-implementation of zlib in pure Java. The first and final aim for hacking this stuff is to add the packet compression support to pure Java SSH systems.

    ant-jsch-1.6.1.jar.zip

    该库通常作为一个依赖包被包含在Java项目中,使得开发者能够利用Ant的任务来执行SSH相关的任务,如上传文件、启动远程服务等,极大地简化了自动化构建流程中的远程操作。 "ant-jsch-1.6.1.jar.zip"是一个压缩文件,...

    ant下使用ssh或者scp所需要的包

    在Ant构建工具中,我们有时需要执行远程操作,如上传或...这些功能对于自动化部署、测试等场景尤其有用,可以极大地提高开发效率和维护性。正确理解和使用这些库,能够帮助我们在Ant中构建出更健壮、更灵活的构建脚本。

Global site tag (gtag.js) - Google Analytics