Java Web 项目打包脚本
可用于 (但不限于) Eclipse 项目。
一次性生成:
1. Java doc .zip 包;
2. Java 源代码 .zip 包;
3. Java 二进制文件 .jar 包;
4. Java 源代码加二进制 .jar 包;
5. 包含 Java 源代码的 .war 包。
依赖:能在 PATH 中找到 jar 、javadoc 。
因项目和个人习惯不同,脚本可能需要修改才能适应实际情况。
1. [代码]某次打包的效果
[typhoon@TFW-CENT6-LT jweb.tfw.tfw_web_lpm]$ ll export.v0.2.5_2013-03-10_20-40.jre150
总用量 984
-rw-rw-r--. 1 typhoon typhoon 2378 3月 10 2013 export.bat
-rw-rw-r--. 1 typhoon typhoon 2332 3月 10 2013 export.sh
lrwxrwxrwx. 1 typhoon typhoon 50 3月 10 2013 tfw-web-lpm.aij.jar -> tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.aij.jar
lrwxrwxrwx. 1 typhoon typhoon 50 3月 10 2013 tfw-web-lpm.aij.war -> tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.aij.war
lrwxrwxrwx. 1 typhoon typhoon 50 3月 10 2013 tfw-web-lpm.doc.zip -> tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.doc.zip
lrwxrwxrwx. 1 typhoon typhoon 52 3月 10 2013 tfw-web-lpm.pages.zip -> tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.pages.zip
lrwxrwxrwx. 1 typhoon typhoon 50 3月 10 2013 tfw-web-lpm.raw.jar -> tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.raw.jar
lrwxrwxrwx. 1 typhoon typhoon 50 3月 10 2013 tfw-web-lpm.src.zip -> tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.src.zip
-rw-rw-r--. 1 typhoon typhoon 116702 3月 10 2013 tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.aij.jar
-rw-rw-r--. 1 typhoon typhoon 524597 3月 10 2013 tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.aij.war
-rw-rw-r--. 1 typhoon typhoon 113918 3月 10 2013 tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.doc.zip
-rw-rw-r--. 1 typhoon typhoon 80119 3月 10 2013 tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.pages.zip
-rw-rw-r--. 1 typhoon typhoon 72633 3月 10 2013 tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.raw.jar
-rw-rw-r--. 1 typhoon typhoon 53374 3月 10 2013 tfw-web-lpm.v0.2.5_2013-03-10_20-40.jre150.src.zip
[typhoon@TFW-CENT6-LT jweb.tfw.tfw_web_lpm]$
2. [代码]export.sh
#Project define.
#========================================
export NAME=tfw-web-lpm
export VERSION=v0.2.6_2013-10-13_14-20+7+.jre150
export WAR_NAME=tfw-web-lpm
export LANG=en
#Variable define.
#========================================
export PROJ=$(pwd)
export SRC=$PROJ/WEB-INF/src
export JDOC=$PROJ/doc/java_doc
export CLASSPATH=$CLASSPATH:$PROJ/WEB-INF/lib/tfw-base.aij.jar
export CLASSPATH=$CLASSPATH:$PROJ/WEB-INF/lib/tfw-web-base.aij.jar
export CLASSPATH=$CLASSPATH:$CATALINA_HOME/lib/servlet-api.jar
export BIN=$PROJ/WEB-INF/classes
export PAGES=tfw/lpm
export OUT=$PROJ/export.$VERSION
export TMP=$OUT/tmp
# Cleaning.
#========================================
rm -Rf $OUT
mkdir -p $OUT
# Generating java doc.
#========================================
rm -Rf $JDOC
cd $SRC
#javadoc -author -private -subpackages * -d $JDOC/$LANG
javadoc -private -subpackages * -d $JDOC/$LANG
cd $OUT
# Packing.
#========================================
cd $SRC
jar Mcvf $OUT/$NAME.$VERSION.src.zip *
cd $JDOC
jar Mcvf $OUT/$NAME.$VERSION.doc.zip *
cd $BIN
jar Mcvf $OUT/$NAME.$VERSION.raw.jar *
cd $PROJ
jar Mcvf $OUT/$NAME.$VERSION.pages.zip $PAGES
mkdir -p $TMP
cd $TMP
jar xvf $OUT/$NAME.$VERSION.raw.jar
jar xvf $OUT/$NAME.$VERSION.src.zip
jar Mcvf $OUT/$NAME.$VERSION.aij.jar tfw
cd $OUT婚纱摄影
rm -Rf $TMP
#Linking for advanced packing.
#========================================
cd $OUThttp://www.huiyi8.com/hunsha/
ln -s $NAME.$VERSION.src.zip $NAME.src.zip
ln -s $NAME.$VERSION.doc.zip $NAME.doc.zip
ln -s $NAME.$VERSION.raw.jar $NAME.raw.jar
ln -s $NAME.$VERSION.pages.zip $NAME.pages.zip
#Advanced packing.
#========================================
mkdir -p $TMP/$PAGES
cp -Rf $PROJ/export.sh $TMP/$WAR_NAME.$VERSION.export.sh
cp -Rf $PROJ/export.bat $TMP/$WAR_NAME.$VERSION.export.bat
cp -Rf $PROJ/$PAGES/* $TMP/$PAGES
mkdir -p $TMP/WEB-INF/lib
cp -Rf $OUT/$NAME*.aij.jar $TMP/WEB-INF/lib
cp -Rf $PROJ/WEB-INF/lib/tfw-base.v*.jar $TMP/WEB-INF/lib
cp -Rf $PROJ/WEB-INF/lib/tfw-web-base.v*.jar $TMP/WEB-INF/lib
mkdir -p $TMP/WEB-INF/data/tfw
cp -Rf $PROJ/WEB-INF/data/tfw/lpm $TMP/WEB-INF/data/tfw
cd $TMP
jar Mcvf $OUT/$WAR_NAME.$VERSION.aij.war *
cd $OUT
ln -s $WAR_NAME.$VERSION.aij.war $WAR_NAME.aij.war
rm -Rf $TMP
ln -s $NAME.$VERSION.aij.jar $NAME.aij.jar
#Tailing.
#========================================
cd $PROJ
cp export.sh $OUT
cp export.bat $OUT
Java Web 项目打包脚本的更多相关文章
- idea创建的java web项目打包发布到tomcat
File-> Project Structure... 点击Artifacts->+号 点击Web Application:Archive->选择与你的项目对应的那一项Artifac ...
- java web 项目打包(war 包)并部署
1.在eclipse中右键单击项目,然后Export选择WAR file,生成项目的WAR文件.具体步骤请看图片详细操作步骤: 2.把生成的WAR文件放到tomcat解压之后的webapps文件夹下. ...
- Eclipse上进行java web项目的打包
以下是一个基于maven搭建的Spring Boot项目的目录结构 版权声明:本文为博主原创文章,未经博主允许不得转载. 原文地址: https://www.cnblogs.com/poterliu/ ...
- java web项目部署到云服务器
第一步把java web项目打包 成war包 第二步:在Build选里选择build Artfacts->water:war->Build war包建立完毕. 第三步:在官网下载winsc ...
- 使用IntelliJ IDEA和Maven构建Java web项目并打包部署
爱编程爱分享,原创文章,转载请注明出处,谢谢! http://www.cnblogs.com/fozero/p/6120375.html 一.背景 现在越来越多的人使用IntelliJ IDEA工具进 ...
- 关于Maven打包Java Web项目以及热部署插件Jrebel的使用
Java Web/Eclipse/Maven/Tomcat 最近有个新项目是java web项目,记录一下,可能比较乱.虽然没接触过Java,但是eclipse还是用过的 初识项目 同事说,项目是ma ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- Linux(Centos)之安装tomcat并且部署Java Web项目
1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b ...
- Linux(Centos)之安装tomcat并且部署Java Web项目(转)
1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图: b ...
随机推荐
- ChsLLVMDocs
https://github.com/wuye9036/ChsLLVMDocs/blob/master/CodeGen.md
- 在asp.net 项目的bin目录中使用子目录
如果要动态发布第三方扩展或者对asp.net项目进行二次开发时,希望不影响原有的程序并保持原有bin完整性,可以将扩展放到bin下的子目录中,并修改web.config的相应配置. 原配置: < ...
- [转]Go的50坑:新Golang开发者要注意的陷阱、技巧和常见错误-高级
from : https://levy.at/blog/11 进阶篇 关闭HTTP的响应 level: intermediate 当你使用标准http库发起请求时,你得到一个http的响应变量.如果你 ...
- Linux 设备驱动开发 —— platform设备驱动应用实例解析
前面我们已经学习了platform设备的理论知识Linux 设备驱动开发 —— platform 设备驱动 ,下面将通过一个实例来深入我们的学习. 一.platform 驱动的工作过程 platfor ...
- c语言函数---I
函数名: imagesize 功 能: 返回保存位图像所需的字节数 用 法: unsigned far imagesize(int left, int top, int right, int bott ...
- 网站的根目录下有一个文件robots.txt ,它是啥?
我相信很多人有过这个疑问,这个robots文件是干嘛的? 我想问,各位搜索淘宝时,是否发现(禁止爬虫抓取提供快页) 关于详细语法,请看:http://zhidao.baidu.com/question ...
- vs2012 MinGW 编译ffmeg 引用外部库libx264,librtmp
VS2012如何编译ffmpeg前面已经有文章讲过,本来主要讲述如何引用外部库libx264,librtmp, ffmpeg版本是3.0.2. 1. 下载x264源文件并编译 源码地址是http:// ...
- web前端面试系列 - 数据结构(两个栈模拟一个队列)
一. 用两个栈模拟一个队列 思路一: 1. 一个栈s1作为数据存储,另一个栈s2,作为临时数据存储. 2. 入队时将数据压人s1 3. 出队时将s1弹出,并压人s2,然后弹出s2中的顶部数据,最后再将 ...
- 排序&匿名函数
nums=[11,34234,23,344,123,1,23,124,523,4,12342341,423,43545] nums.sort() print(nums) #这个就是排序,从小到到 匿名 ...
- centos7下memcached的安装配置
memcached 依赖 libevent-devel 首先安装libevent-devel yum -y install libevent-devel 安装完毕! 继续安装memcached yum ...