您的位置:首页 > 运维架构 > Shell

通过命令的方式编译web project

2016-03-02 21:11 429 查看
如何通过命令的方式编译web project?以下内容为我自己编辑的一个shell脚本。

#!/bin/sh
# auther qishuai
# 源工程路径,此时robot中是未经编译的java类及文件
PROJECT_PATH=/home/robot
# 生成的class类文件路径
OUTPUT_PATH=$PROJECT_PATH/WebRoot/WEB-INF/classes

# 判断路径是否存在,不存在则创建
if [ ! -e "$OUTPUT_PATH" ]; then
mkdir "$OUTPUT_PATH"
fi

# 查找出源工程中的所有java类,并将其写入列表文件
find $PROJECT_PATH/src -name *.java > $PROJECT_PATH/sources.list

# 编译,此时classpath需要引入所有jdk所定义的路径、tomcat的lib路径和工程的lib路径;并且需要关联上边的列表文件,用来告诉编译器需要编译的类都有哪些
javac -encoding utf8 -d $OUTPUT_PATH -classpath ".:$CLASSPATH:/home/apache-tomcat-7.0.65/lib/*:$PROJECT_PATH/WebRoot/WEB-INF/lib/*" @$PROJECT_PATH/sources.list

# 拷贝工程中的其他非java文件到对应的目录,并删除多余的java文件
cp -R $PROJECT_PATH/src/config/ $OUTPUT_PATH
cp $PROJECT_PATH/src/*.xml $OUTPUT_PATH
rm -rf $OUTPUT_PATH/config/*.java

# 进行文件的拷贝
cp -R $PROJECT_PATH/WebRoot /home
rm -rf $PROJECT_PATH

# 添加缺少的jar包并修改文件夹名称
cp -n /home/apache-tomcat-7.0.65/webapps/robot/WEB-INF/lib/*.jar $PROJECT_PATH/WEB-INF/lib/
mv /home/WebRoot/ robot
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell