[自动运维]ant脚本打包,上传文件到指定服务器,并部署

1、根节点使用,表示根目录为当前目录,默认启动的target为build,项目名称为othersysm,

    <project basedir="." default="build" name="othersysm">
    </project>

2、每一个target为一个执行命令,如果有依赖关系,则写为:

<target depends="build-project" name="build"/>

表示要运行target,需要先运行build-project,根据此依赖关系,我们可以认为project节点中配置的default就是最后一个运行脚本

3、定义变量和路径,使用定义的变量的方法为${变量名称}

<property name="ibslib.location" value="../ibslib"/><property name="debuglevel" value="source,lines,vars"/><property name="target" value="6"/><property name="source" value="6"/>
3、定义jar包路径,并命名,fileset表示引用外部包,pathelement表示内部
 <path id="othersysm.classpath">
 <pathelement path="{classpath}"/>
 <fileset dir="${ibslib.location}/lib/logging" includes="**/*.jar,**/*.zip"/>
 <pathelement location="bin"/> </classpath>

4、常用操作,新建文件夹使用mkdir,和拷贝文件使用copy

<target name="init">  <echo>
            +=======================================+
            | init
            +=======================================+
   </echo>  <mkdir dir="test"/>  <copy includeemptydirs="false" todir="test"><!--忽略空文件夹,并且拷贝到指定目录-->      <fileset dir="src" excludes="**/*.launch, **/*.java"/><!--忽略指定文件-->  </copy></target>

5、编译java文件,编译命令为:

debuglevel:调试等级

destdir:编译后的目标文件夹

source:源文件版本

target:目标文件版本

encoding:编码

includeantruntime :指出是否应在类路径中包括 Ant 运行时程序库,默认为 yes

<target depends="init" name="build-project">  <echo message="${ant.project.name}: ${ant.file}"/><!-- 打印ant脚本目录 -->  <javac debug="true" debuglevel="${debuglevel}" destdir="test" source="${source}" target="${target}" encoding="UTF-8" includeantruntime="false">    <src path="src"/><!-- 源文件目录 -->    <classpath refid="othersysm.classpath"/><!-- classpath目录 -->  </javac></target>

6、在ant文件中该执行其他文件:

antfile:需要运行的build文件

inheritAll 是否共享参数

target:运行的ant的target

output:输出的日志文件

如果将参数传递,可以采用property

<ant antfile="${web.location}/build.xml" inheritAll="false" target="genwar" output="output.log"><property name="currentMode" value="${currentMode}"/><property name="targetMode" value="${targetMode}"/></ant>

7、file文件,表示读取properties文件,可以获取此文件中的属性值

<property file="${basedir}/build.properties"/>

8、替换文件中的指定值

<replaceregexp byline="true">
    <regexp pattern="正则表达式"/>
    <substitution expression="将要替换的值"/>
    <fileset dir="${unpack.war.dir}/WEB-INF" includes="web.xml"/>
</replaceregexp>

9、将文件夹打包为war包

<war destfile="${uibs.location}/web.war" webxml="WebContent/WEB-INF/web.xml"><fileset dir="WebContent" includes="**"/></war>

10、通过scp命令将上传war包文件到指定机器的指定目录

<scp file="${uibs.location}/${server.name}.war" todir="${wls.username}:${wls.password}@${remote.host}:${deploy.location}" trust="true"/>

11、远程ssh,执行服务器命令,执行启动脚本

<sshexec host="${remote.host}"
        username="${remote.username}"
        password="${remote.password}"
        command="ls"
        trust="true"/>  

				
时间: 2024-10-25 12:33:58

[自动运维]ant脚本打包,上传文件到指定服务器,并部署的相关文章

git 上传文件到远程服务器

当你想要上传文件到git服务器上,需要做一下流程: 一开始走的流程是:1.本地初始化一个git库2.关联远程库 1.本地初始化一个git库 在你要上传的文件夹中打开命令窗口:git init:然后他会自动生成.git文件 2.关联远程库:命令行:git remote add origin xxxxx 3.进入克隆下来的文件夹:cd test2(这里一定要进入文件夹,不然会报很多错误,等下下面有报错的问题) 4.先提交文件 git add .   (这里的  .  是指提交全部文件) 5.ls (

SpringBoot 上传文件到linux服务器 异常java.io.FileNotFoundException: /tmp/tomcat.50898……解决方案

SpringBoot 上传文件到linux服务器报错java.io.FileNotFoundException: /tmp/tomcat.50898-- 报错原因: 解决方法 java.io.IOException: java.io.FileNotFoundException: /tmp/tomcat.5089835798184465073.8081/work/Tomcat/localhost/ROOT/www/server/apache-tomcat-8.5.32/webapps/jxmsto

安卓上传文件至PHP服务器

前两个月有幸参加一次免费培训,开发了一款小软件.发现AsyncHttpClient还真是好用. 直奔主题,安卓上传文件至PHP服务器: 1.PHP端服务器: <?php //链接数据库 include ("config/db.php"); //获取用户id $userid = $_POST['userid']; //处理上传文件 $base_path = "upload/"; $fileName=$_FILES['file']['name']; $name=e

C# 上传文件至远程服务器

C# 上传文件至远程服务器(适用于桌面程序及web程序) 2009-12-30 19:21:28|  分类: C#|举报|字号 订阅 最近几天在玩桌面程序,在这里跟大家共享下如何将本地文件上传到远程服务器上面. 注意,我在这里使用的是WebClient而不是ftp 首先,我们先来定义一个类UpLoadFile,这个类就是文件上传类.代码如下: public void UpLoadFile(string fileNamePath, string uriString, bool IsAutoRena

putty windows上传文件到linux服务器 &amp; 从linux服务器 下载文件到 windows

从putty官网下载putty软件:putty.exepscp.exepsftp.exe等软件 也可以自己下windows安装包putty-0.63-installer.exe 本人直接下载putty-0.63-installer.exe安装包了,然后直接安装 使用pscp方式从windows上传文件到linux服务器 在CMD命令行中进入到putty安装目录 输入pscp 回车 pscp 跟我们平时使用的linux scp命令操作的都是类似的 现在我直接从windows本地上传一个文件到lin

Android端上传文件到Web服务器

本文中主要就Android端上传文件到Web服务器,做出的一个简单的Demo 1.Tomcat上部署的服务端的实现 2.Android端的代码实现 1.Tomcat服务器上面项目的部署与实现 创建一个Web Project 创建FileUploadServlet.java,当然,一下两个重要的Jar包不能够忘记! commons-fileupload-1.2.2.jar commons-io-2.0.1.jar FileUploadServlet.java import java.io.File

sftp方式从windows上传文件到Linux服务器

今天我一直用scp想实现从windows上传文件到Linux服务器,但是鼓捣了半天也没有实现.后来查资料才发现,scp实现文件的上传和下载貌似只能在Linux和Linux之间实现.(欢迎指正不对的地方) 后来开始转用sftp来解决上述问题,其中也是遇到了不少坑,下面说一下比较合理的步骤: 首先声明,我是在Windows上通过xshell5来连接远程服务器的,连接成功后如下图: 然后用sftp连接远程服务器:sftp 192.168.167.178: 再然后,修改本地上传的文件夹路径:先点击这个按

运维之SecureCRT工具上传、下载文件

使用securtCRT,使用Linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器. sz中的s意为send(发送),告诉客户端,我(服务器)要发送文件 send to cilent,就等同于客户端在下载. rz中的r意为received(接收),告诉客户端,我(服务器)要接收文件 received by cilent,就等同于客户端在上传. 要使用sz.rz命令需要下载软件包:rpm -ivh lrzsz-0.12.20-27.1.el6.x86_64

Android ANT脚本打包及混淆文件

http://p.ymt360.com/w/app/wiki/tech/build_apk/ 简介 Android支持使用ANT打包.通过ANT脚本,可以对文件进行编译.打包.安装.联合SVN自动拉取等.并且支持多种方式打包,如debug.release.批量打包等场景.eclipse项目是通过调用SDK提供的ANT脚本build.xml文件进行打包的. 附件是AndroidSDK附带的打包脚本,超详细,可以参考学习下.build.xml(建议使用JDK1.6环境,在之前ANT使用过程中被1.7