java打包和运行的方式
java打jar和war包的方式
方式一、采用maven进行打包
利用maven的package打包生命周期对项目进行打包。
//cmd进入项目目录
//先clean一下项目,主要是删除项目生成的一些项目文件,然后在用package进行打包
mvn clean package
或者
mvn clean package -Dmaven.test.skip=true
-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
或者可以在idea中直接点击package一键打包。
方式二、使用jar命令进行打包
cmd进入项目目录输入以下命令
//执行以下命令后会在当前目录生成一个warname.war
jar -cvf warname.war ./*
//有一个弊端就是把整个项目所有的文件都弄到了war里面了,体积巨大。
//解压war包
jar xvf warname.war
有时 war包内修改参数后,需要从新打war包
1.cd 到 项目目录里
2.jar -cvf test.war *
解压自然就是:
jar xvf temp.war
jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...
其中 :
{ctxu} 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的一个,它们分别表示:
- -c 创建新的 JAR 文件包
- -t 列出 JAR 文件包的内容列表
- -x 展开 JAR 文件包的指定文件或者所有文件
- -u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中)
[vfm0M] 中的选项可以任选,也可以不选,它们是 jar 命令的选项参数
- -v 生成详细报告并打印到标准输出
- -f 指定 JAR 文件名,通常这个参数是必须的
- -m 指定需要包含的 MANIFEST 清单文件
- -0 只存储,不压缩,这样产生的 JAR 文件包会比不用该参数产生的体积大,但速度更快
- -M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m 参数
[jar-文件] 即需要生成、查看、更新或者解开的 JAR 文件包,它是 -f 参数的附属参数
[manifest-文件] 即 MANIFEST 清单文件,它是 -m 参数的附属参数
[-C 目录] 表示转到指定目录下去执行这个 jar 命令的操作。它相当于先使用 cd 命令转该目录下再执行不带 -C 参数的 jar 命令,它只能在创建和更新 JAR 文件包的时候可用。
文件名 ... 指定一个文件/目录列表,这些文件/目录就是要添加到 JAR 文件包中的文件/目录。如果指定了目录,那么 jar 命令打包的时候会自动把该目录中的所有文件和子目录打入包
中。
运行java可执行jar包
1.控制台的可通过cmd命令:java -jar 包名.jar(需要进入到当前的jar包目录)
2.建bat文件写进代码java -jar xxx.jar双击执行(同一路径下)
@echo off
java -jar events.jar
pause