Java web · 2018年12月24日 0

命令行打包 war文件

> 根据自己项目的真实情况需要注意配置jdk环境,如果jdk环境不同可能造成打出的war包不能正常运行。例如 项目使用jdk1.7 打包使用javac必须为jdk1.7中的javac命令,tomcat需要配置执行的jdk环境为1.7。如果电脑使用的和项目使用的是同一个jdk,配置路径可以省略,其他情况不能省略。

命令行打包 war文件
echo 准备java文件
dir *.java/s/b > source.txt

if exist out\classes (
echo 清理中…
rd /S/Q out
)
echo 清理中完成
md out\classes
md out\webapp
echo 编译源码
set JAVA_HOME=D:\Program Files\Java\jdk1.7.0_75
%JAVA_HOME%\bin\javac -cp .;E:\apache-tomcat-8.5.35\lib\*;E:\apache-tomcat-8.5.35\bin\*;E:\auto_test\zchfaxgb\src\main\webapp\WEB-INF\lib\* -d out\classes -encoding utf-8 @source.txt
echo 复制webapp目录
xcopy src\main\webapp out\webapp /s/e/i/y
echo 创建编译源码路径
md out\webapp\WEB-INF\classes
echo 复制classes目录
xcopy out\classes out\webapp\WEB-INF\classes /s/e/i/y
echo 复制resources目录
xcopy src\main\resources out\webapp\WEB-INF\classes /s/e/i/y
echo 开始打包
cd out\webapp
echo 打包中
jar -cvf zcjf.war *
move zcjf.war ../../
echo 打包完成
pause

由于使用的是jdk1.7 所以需要配置环境路径、tomcat也需要配置jdk为1.7
set JAVA_HOME=D:\Program Files\Java\jdk1.7.0_75
set JRE_HOME=D:\Program Files\Java\jdk1.7.0_75\jre

参考文件
javac -cp .;E:\apache-tomcat-8.5.35\lib\*;E:\apache-tomcat-8.5.35\bin\*;E:\Java_Workspace\zchfax_web\zchfaxgb\src\main\webapp\WEB-INF\lib\* -d E://temp/classes -encoding utf-8 E:\Java_Workspace\zchfax_web\zchfaxgb\src\main\java\*.java

javac -cp .;E:\apache-tomcat-8.5.35\lib\*;E:\apache-tomcat-8.5.35\bin\*;E:\Java_Workspace\zchfax_web\zchfaxgb\src\main\webapp\WEB-INF\lib\* -d E:\Java_Workspace\zchfax_web\zchfaxgb\src -encoding utf-8 ./*.java

生产编译的source.txt的说明文件
cd src

dir *.java/s/b > source.txt
javac -cp .;E:\apache-tomcat-8.5.35\lib\*;E:\apache-tomcat-8.5.35\bin\*;E:\Java_Workspace\zchfax_web\zchfaxgb\src\main\webapp\WEB-INF\lib\* -d cn @source.txt

//这句话是说编译java文件,并且把编译文件放到-d指定的文件夹
javac -cp .;E:\apache-tomcat-8.5.35\lib\*;E:\apache-tomcat-8.5.35\bin\*;E:\Java_Workspace\zchfax_web\zchfaxgb\src\main\webapp\WEB-INF\lib\*;D:\Program Files\Java\jdk1.7.0_75\lib\* -d classes -encoding utf-8 @source.txt

javac -cp .;E:\apache-tomcat-8.5.35\lib\*;E:\apache-tomcat-8.5.35\bin\*;E:\Java_Workspace\zchfax_web\zchfaxgb\src\main\webapp\WEB-INF\lib\*;”D:\Program Files\Java\jdk1.7.0_75\lib\*” -d ./main/webapp/WEB-INF/classes -encoding utf-8 @source.txt

2.拷贝资源文件

拷贝配置文件。有时我们会将配置文件(如spring、数据库的配置文件)放在src目录下,此时需要将这些配置文件拷贝到classes文件夹中,要保持原有的包结构。

拷贝classes文件夹。将整个classes文件夹拷贝至WebContent/WEB-INF目录里面

3.生成war包

jar -cvf Log.war F:\log\WebContent\*

Share this: