文档章节

springboot web应用 jar 启动 ant脚本

夜黑人模糊灬
 夜黑人模糊灬
发布于 2017/12/22 15:48
字数 550
阅读 2
收藏 0

start.sh

###启动
#!/bin/sh
pidPath="face-in-pid"
rm -f $pidPath
rm -f out.log
nohup java -jar -Dlogging.path=/app/log/face-in /app/www/face-in.jar -server >out.log 2>&1 &
echo $! > $pidPath

stop.sh

###停止
tpid=`cat face-in-pid | awk '{print $1}'`
tpid=`ps -aef | grep $tpid | awk '{print $2}' |grep $tpid`
if [ ${tpid} ]; then
kill -9 $tpid
fi

build.xml

<?xml version="1.0" encoding="UTF-8"?>

<project name="ant-demo" basedir="." default="build">

    <tstamp>
        <format property="time" pattern="yyyy-MM-dd HH:mm:ss"/>
        <format property="date" pattern="yyyy-MM-dd"/>
    </tstamp>

    <property name="M2_HOME" value="/app/env/apache-maven-3.3.3"/>

    <!--<property environment="SystemVariable"/>-->
    <property name="repository_address" value="git@gitee.com:username/ant-demo.git"/>
    <property name="srcdir" value="${basedir}/ant-demo"/>
    <property name="fixdir" value="${basedir}/patch"/>

    <property name="in_bin_jar" value="${srcdir}/face-in-web-controller/target/face-in.jar"/>
    <property name="in_dir" value="/app/www/face-in"/>
    <property name="in_jar" value="/app/www/face-in.jar"/>
    <!--
        <property name="dbdir" value="${srcdir}/src/main/resources"/>
        <property name="dbdriver" value="com.mysql.jdbc.Driver"/>
        <property name="dburl" value="jdbc:mysql://127.0.0.1:3306/?useUnicode=true&amp;characterEncoding=utf8"/>
        <property name="dbusername" value="root"/>
        <property name="dbpassword" value="Lr123456"/>
    -->
    <!-- <property name="r" value="HEAD"/> -->
    <property name="r" value="master"/>

    <patternset id="resources">
        <include name="**/?*.properties"/>
        <include name="**/?*.xml"/>
        <include name="**/?*.dtd"/>
        <include name="**/?*.tld"/>
        <include name="**/?*.ftl"/>
        <include name="**/?*.txt"/>
        <include name="**/?*.vm"/>
    </patternset>

    <condition property="usefix">
        <available file="${fixdir}" type="dir"/>
    </condition>

    <target name="clean">
        <delete dir="${srcdir}"/>
    </target>

    <target name="patch" if="usefix">
        <unzip dest="${srcdir}">
            <fileset dir="${fixdir}" includes="*.zip"/>
        </unzip>
    </target>

    <target name="checkout" depends="clean">
        <echo message="checkout revision:[${r}]"/>
        <exec dir="${basedir}" executable="git">
            <arg line="clone -b ${r} ${repository_address}"/>
        </exec>
        <echo message="checkout complete !"/>
    </target>

    <target name="update">
        <echo message="update revision:[${r}]"/>
        <exec dir="${srcdir}" executable="git">
            <arg line="pull"/>
        </exec>
        <echo message="update complete !"/>
    </target>

    <target name="package" depends="patch">
        <exec dir="${srcdir}" executable="${M2_HOME}/bin/mvn">
            <arg line="clean package -U -DskipTests"/>
        </exec>
    </target>

    <target name="build">
        <antcall target="package"/>
    </target>

    <target name="rebuild" depends="clean, checkout, build"/>

    <target name="deploy">
        <copy file="${in_bin_jar}" tofile="${in_jar}" overwrite="true"/>
    </target>

    <target name="redeploy">
        <delete dir="${in_dir}"/>
        <delete file="${in_jar}"/>
        <antcall target="deploy"/>
    </target>

    <!-- tomcat -->
    <target name="stop">
        <exec executable="./stop.sh" failonerror="false">
            <arg value="stop"/>
        </exec>
        <sleep seconds="5"/>
    </target>

    <target name="do-start">
        <exec executable="./start.sh" failonerror="false">
            <arg value="start"/>
        </exec>
        <!-- <waitfor maxwait="5" maxwaitunit="second" checkevery="500">
          <http url="http://127.0.0.1:8080/ping.html"/>
        </waitfor>
        <echo message="ok" /> -->
        <sleep seconds="15"/>
    </target>

    <target name="start" depends="stop, do-start">
        <echo message="DONE!!!!"/>
    </target>

    <target name="auto" depends="stop,rebuild,redeploy,do-start">
        <echo message="DONE!!!!"/>
    </target>

    <target name="help">
        <echo message="Ant 参数说明"/>
        <echo message="-    clean : 删除所有源程序"/>
        <echo message="- checkout : 从GIT获取最新的源程序"/>
        <echo message="-    build : 编译部署项目 : [*默认]"/>
        <echo message="-  rebuild : 依次执行 clean, checkout, build"/>
        <echo message="-    patch : 解压缩patch目录下的zip包,并拷贝到src目录"/>
        <echo message="-   deploy : 部署到www目录"/>
        <echo message="- redeploy : 删除旧代码部署到www目录"/>
        <echo message="-  do-start : 启动tomcat"/>
        <echo message="-     stop : 停止tomcat"/>
        <echo message="-     auto : 依次执行 stop, redeploy, start"/>
    </target>
</project>

 

© 著作权归作者所有

共有 人打赏支持
夜黑人模糊灬
粉丝 8
博文 71
码字总数 45917
作品 0
程序员
SpringBoot 2.0 系列001 -- 入门介绍以及相关概念

SpringBoot 2.0 系列001 -- 入门介绍以及相关概念 什么是SpringBoot? 项目地址:http://projects.spring.io/spring-boot/ SpringBoot介绍 Spring Boot使开发独立的,产品级别的基于Spring的...

路上有你0314
05/10
0
0
eclipse 安装ant 扩展 应用

开发ant 脚本时,最好有一个比较好的ide工具,而eclipse是比较不错的工具。eclise本身自带ant工具可以通过"Window→Preferences→Ant→Runtime"找到。 如下图,在classpath中可以看到我的ant...

dml124
2013/08/09
0
0
springboot添加邮件发送及压缩功能

springboot添加邮件发送及文件压缩功能 转载请注明出处:https://www.cnblogs.com/funnyzpc/p/9190233.html   先来一段诗 `   就这样吧   忍受折磨   然后,躺进医院   然后,死去...

funnyZpC
07/14
0
0
Hive2.1.1 下hwi web界面的配置(超详细)

2016/11/1 17:30:06 资料: 1.ant 1.9.7 2.Hive src; 3.jdk 1.7; 步骤: A: Hive2.1.1源码下载地址: http://apache.fayea.com/hive/hive-2.1.1/ 1.打war包 tar -zxvf hive-2.1.1-src.tar.g......

bymain
2016/12/17
0
0
ant 源码分析 第一篇 找到源码所需要的jar包

开始研究ant的源码架构好久了,但是今天是第一次写博文。因为我在观察ant运行目录中没有找到相关的任何所需要的jar包,所以写下来等待大家来提供答案。 ant运行时需要的jar包都在%anthome%/l...

dml124
2014/03/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Qt编写自定义控件属性设计器

以前做.NET开发中,.NET直接就集成了属性设计器,VS不愧是宇宙第一IDE,你能够想到的都给你封装好了,用起来不要太爽!因为项目需要自从全面转Qt开发已经6年有余,在工业控制领域,有一些应用...

飞扬青云
34分钟前
1
0
我为什么用GO语言来做区块链?

Go语言现在常常被用来做去中心化系统(decentralised system)。其他类型的公司也都把Go用在产品的核心模块中,并且它在网站开发中也占据了一席之地。 我们在决定做Karachain的时候,考量(b...

HiBlock
39分钟前
1
0
大数据学习脑图以及入门教程!

近些年,大数据的火热可谓是技术人都知道啊,很多人呢,也想学习大数据相关,所以,这里分享几个大数据脑图,希望可以让你清楚明白从哪里入门大数据,知道该学习以及掌握哪些知识点; 大数据...

董黎明
今天
1
0
聊聊redis的监控工具

序 本文主要研究一下redis的监控工具 redis-stat redis-stat是一个比较有名的redis指标可视化的监控工具,采用ruby开发,基于redis的info命令来统计,不影响redis性能。 docker运行 docker r...

go4it
今天
2
0
TypeScript基础入门之高级类型的索引类型(Index types)

转发 TypeScript基础入门之高级类型的索引类型(Index types) 高级类型 索引类型(Index types) 使用索引类型,编译器就能够检查使用了动态属性名的代码。 例如,一个常见的JavaScript模式是从...

durban
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部