Linux下打包压缩war、解压war包和jar命令

简介:
环境

  RedHat Linux 9 + VWWare 8.0 + SSH 3.2.9 + Putty 0.62

  问题

  Linux下打包压缩war、解压war包和jar命令

  解决

  把project_a文件夹下的文件打包成project.war

  1.      打包

  jar -xvf project.war /project_a

  

  -c  创建war包

  -v  显示过程信息

  -f  指定 JAR 文件名,通常这个参数是必须的

  -M  不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m 参数

  -0  这个是阿拉伯数字,只打包不压缩的意思

  2.      解压

  jar -xvf project.war

  

  解压到当前目录

  jar 命令详解

  使用不带任何的 jar 命令我们可以看到 jar 命令的用法如下:

  jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...

  其中 {ctxu} 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的一个,它们分别表示:

  -c 创建新的 JAR 文件包

  -t 列出 JAR 文件包的内容列表

  -x 展开 JAR 文件包的指定文件或者所有文件

  -u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中)

  特别注意,在参数的下达中, c/x/t/u 仅能存在一个!不可同时存在!

  因为不可能同时压缩与解压缩。

  -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

  -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

  -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

  -f 指定 JAR 文件名,通常这个参数是必须的

  请留意,在 f 之后要立即接档名喔!不要再加参数!

  例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成

  『 tar -zcvPf tfile sfile』才对喔!

  -p :使用原文件的原来属性(属性不会依据使用者而变)

  -P :可以使用绝对路径来压缩!

  -N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

  –exclude FILE:在压缩的过程中,不要将 FILE 打包!

  -m 指定需要包含的 MANIFEST 清单文件

  -0 只存储,不压缩,这样产生的 JAR 文件包会比不用该参数产生的体积大,但速度更快

  -M 不产生所有项的清单(MANIFEST〕文件,此参数会忽略 -m 参数

  [jar-文件] 即需要生成、查看、更新或者解开的 JAR 文件包,它是 -f 参数的附属参数

  [manifest-文件] 即 MANIFEST 清单文件,它是 -m 参数的附属参数

  [-C 目录] 表示转到指定目录下去执行这个 jar 命令的操作。它相当于先使用 cd 命令转该目录下再执行不带 -C 参数的 jar 命令,它只能在创建和更新 JAR 文件包的时候可用。  

  文件名 ... 指定一个文件/目录列表,这些文件/目录就是要添加到 JAR 文件包中的文件/目录。如果指定了目录,那么 jar 命令打包的时候会自动把该目录中的所有文件和子目录打入包中。

目录
相关文章
|
4月前
|
Linux
在Linux中,列出几种常见打包工具并写相应解压缩参数。
在Linux中,列出几种常见打包工具并写相应解压缩参数。
|
1月前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
102 3
|
2月前
|
前端开发 Unix Linux
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
本文详细介绍了 `electron-builder` 在 Linux 平台上如何打包 Electron 应用程序,涵盖了 AppImage、Flatpak、Snap 等多种格式的打包原理和具体实现。文章从初始化 `LinuxPackager` 到创建各种目标格式的包,详细解析了每个步骤的代码逻辑和关键方法,帮助开发者更好地理解和使用 `electron-builder` 进行 Linux 应用的打包。
177 2
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
|
2月前
|
存储 数据可视化 Java
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。
650 1
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
|
4月前
|
Java Maven 容器
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
使用IntelliJ IDEA的Artifacts功能,可以将项目依赖的第三方jar包打包进jar文件中,实现双击jar包即可直接运行。
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
|
4月前
|
Java Maven
构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)
这篇文章详细介绍了构建SpringBoot项目的过程,包括新建工程、选择环境配置、添加依赖、项目结构说明,并演示了如何编写一个简单的Controller控制器实现输出功能,最后讲解了如何使用Maven将项目打包成可执行的JAR包,并提供了运行JAR包的命令和测试效果。
构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)
|
5月前
|
Java Linux Shell
Linux后台运行jar程序
【7月更文挑战第23天】
107 1
|
4月前
|
Java Linux Shell
【Azure 应用服务】部署Jar到App Service for Linux,因启动命令路径配置错误而引起:( Application Error 问题
【Azure 应用服务】部署Jar到App Service for Linux,因启动命令路径配置错误而引起:( Application Error 问题
|
4月前
|
Linux C# C++
【Azure App Service For Container】创建ASP.NET Core Blazor项目并打包为Linux镜像发布到Azure应用服务
【Azure App Service For Container】创建ASP.NET Core Blazor项目并打包为Linux镜像发布到Azure应用服务
|
4月前
|
Linux 数据安全/隐私保护 Python
LInux下 python混淆代码打包产出exe
安装 PyArmor 加密Python程序:使用`pip install pyarmor`。为避免混淆 venv 目录,可指定排除此目录:`.\/venv\/bin\/pyarmor-7 pack -e \"--onefile\" -x \"--exclude venv\" main.py`。查阅详细文档:[官方指南](https://pyarmor.readthedocs.io/zh/v7.x/advanced.html)。