文档章节

springboot web应用 jar 启动 ant脚本

夜黑人模糊灬
 夜黑人模糊灬
发布于 2017/12/22 15:48
字数 550
阅读 2
收藏 0
点赞 0
评论 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>

 

© 著作权归作者所有

共有 人打赏支持
夜黑人模糊灬
粉丝 7
博文 67
码字总数 45043
作品 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
springboot添加邮件发送及压缩功能

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

funnyZpC
07/14
0
0
eclipse 安装ant 扩展 应用

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

dml124
2013/08/09
0
0
ant 源码分析 第一篇 找到源码所需要的jar包

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

dml124
2014/03/09
0
0
用Ant实现Java项目的自动构建和部署

Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要让读者熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。 一. 安装与配置 下载...

chunhei2008
2014/08/26
0
0
Java调用Ant API用法

Java调用Ant API用法 用法 API 调用 JAVA Ant是Java程序员的一个好的工具,主要可以帮助程序员进行java项目的的管理,包括批量编译、部署、文档生成等工作,其用途远不止如此,ant内置了大量...

光石头
2010/10/12
0
1
基于Jenkins + Tomcat 的安卓客户端可持续化构建及发布下载(loltube.cn)

一. Jenkins 可持续化构建环境请参考 文章 http://my.oschina.net/long0419/blog/183299 二. 基于搭好可持续构建环境完成基础上 ,使用Ant 来编写安卓持续化构建环境 (未使用gradle 原理一样...

long0419
2015/04/02
0
0
彻底掌握Android多分包技术MultiDex-用Ant和Gradle分别构建(一)

Andrid多分包技术在大型项目编译方面起着至关重要的作用,作为一个高级开发者我们有必要掌握此技能,现在我带领大家统一学习此项技能,并教会大家分别使用Ant和Gradle构建。 什么是Dex Dex是...

tan6458
2017/01/09
0
0
Gradle学习(十七)——Ant操作

转载请注明:http://blog.csdn.net/lastsweetop/article/details/79043654 简介 Gradle提供了与Ant的完美集成,你可以在Gradle构建中使用单个Ant任务或者全部由Ant构建。在Gradle的构建脚本里...

lastsweetop
01/12
0
0
转载:JAVA 操作 Ant API

Java调用Ant API用法 用法 API 调用 JAVA Ant是Java程序员的一个好的工具,主要可以帮助程序员进行java项目的的管理,包括批量编译、部署、文档生成等工作,其用途远不止如此,ant内置了大量...

kernal
2014/12/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

DevExpress v18.1最新版帮助文档下载大全

DevExpress v18.1.4帮助文档下载列表大全来啦!包含.NET、VCL、HTML/JS系列所有帮助文档,提供CHM和PDF两个版本。除已停止更新的Silverlight、Windows 8外,其余均为最新版本。 文章底部扫描...

Miss_Hello_World
2分钟前
0
0
Unity Shader中各种空间及变换方法

前几天尝试写一个传送门的shader,发现自己对坐标之间的变换掌握的不够熟练,趁着这阵子想整理shader相关的知识点,先把各种空间及之间转换整理一下。 1 模型空间-世界空间-观察空间-裁剪空间...

爽歪歪ES
8分钟前
0
0

定义和应用 栈(stack)是一种特殊的线性表,其插入(也称入栈或压栈)和删除(也称出栈或弹栈)操作都在表的同一端进行。这一端被称为栈顶(top)另一端称为栈底端(bottom)。 我们生活中其实...

Frost729
9分钟前
0
0
数据分析挖掘学习干货:大数据处理技术的总结与分析

一 数据分析处理需求分类 1 事务型处理 在我们实际生活中,事务型数据处理需求非常常见,例如:淘宝网站交易系统、12306网站火车票交易系统、超市POS系统等都属于事务型数据处理系统。 这类系...

加米谷大数据
14分钟前
0
0
关于看到的从页面调取html或者接口

你看到的可能是路由或者进行的接口拦截的跳转而不是前端页面进行的跳转

凡人修仙者
18分钟前
0
0
Ubuntu 安装 Redis (非源码Build方式)

安装redis : apt-get install redis-server # 安装完会自动自动 使用命令 ps -aux|grep redis 查看是否启动 ---------------------------------- redis 服务操作方式 /etc/init.d/redis-serv......

Alex142857
23分钟前
0
0
mysql字段中去掉括号

eg: select * from (select *,substring_index(substring_index(remarks,"[",1),']',-1) as carCard from test ) as t where carCard LIKE '%C999%'...

writeademo
26分钟前
0
0
web3.py简介

与web3.py库交互的共同入口是web3对象。web3对象提供API,用于python开发的应用与以太坊区块链进行交互,通常是通过连接JSON-RPC服务器进行。 Providers提供者 Providers使web3连接到区块链上...

笔阁
27分钟前
0
0
jquery 获取父页面某一个input框值得写法

//login_name 为父页面的input框的ID var login_name= $('#login_name', window.parent.document).val();//当前用户登录名...

gulf
28分钟前
0
0
mybatis高级查询

说实话不怎么想写这些,可能是我昨天太累了,妹的那个错误一直找不到。醉了,写一下把,分别是多表联合查询以及汇总 <resultMap id="mdxlResult" type="java.util.Map"> <id column="id" ...

木九天
30分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部