【java】常用命令记录

1.java

2.jar

2.1 介绍

  1. JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。(也可以用war包. jar cvf aa.war)
  2. 当然也是有区别的,JAR包中有一个META-INF\MANIFEST.MF文件,当你找成JAR包时,它会自动生成。
  3. JAR包是由JDK安装目录\bin\jar.exe命令生成的,当我们安装好JDK,设置好path路径,就可以正常使用jar.exe命令,它会用lib\tool.jar工具包中的类。
    jar命令格式:jar {c t x u i }[ v f m n 0 P M e ][jar-file][manifest-file] [entry-point] [-C dir] files ...

其中{ctxu}这四个参数必须选选其一(互斥的参数)。[v f m e 0 M i ]是可选参数,文件名也是必须的。
-c 创建一个jar包
-t显示jar中的内容列表
-x 解压jar包
-u 添加文件到jar包中
-i为指定的jar文件创建索引文件


-v生成详细的报造,并输出至标准设备
-f指定jar包的文件名
-m 指定manifest.mf文件.(manifest.mf文件中可以对jar包及其中的内容作一些一设置)
-0 产生jar包时不对其中的内容进行压缩处理
-P保留文件名中的前导'/'(绝对路径)和'...'(父目录)组件
-M 不产生所有文件的清单文件(Manifest.mf)。这个参数与忽略掉-m参数的设置
-e 为打包成可执行JAR文件的独立应用程序指定应用程序入口点


-C表示转到相应的目录下执行jar命令,相当于cd到那个目录,然后不带-C执行jar命令

2.2 使用

  • 创建jar包

jar cvf hello.jar hello #创建hello.jar,存在则覆盖

jar cvf hello.jar -C ./jar hello #在当前目录生成hello.jar,选取内容为 ./jar/hello文件夹

  • 解压jar包

jar xvf hello.jar

  • 查看jar包

jar tvf hello.jar

  • jar中添加文件

jar uvf hello.jar aa.txt # 将aa.txt加入hello.jar

jar uvf hello.jar ./jar/aa.txt #会添加到jar目录下 (在上层目录)

jar uvf hello.jar ../jar/aa.txt #会添加到jar目录下 (在当前目录)

  • 创建不压缩内容jar包

jar cvf0 hello.jar *.class #利用当前目录中所有的.class文件生成一个不压缩jar包

  • 创建带manifest.mf文件的jar包

jar cvfm hello.jar manifest.mf hello #创建的jar包多了一个META-INF目录,META-INF止录下多了一个manifest.mf文件,至于manifest.mf的作用,后面会提到.

  • 忽略manifest.mf文件

jar cvfM hello.jar hello #生成的jar包中不包括META-INF目录及manifest.mf文件

相关推荐
Java内核笔记7 分钟前
Spring AI 生产级 Chat 接口:6 个开关、13 个坑,其中 2 个开关根本没生效
java·人工智能·后端
雷一言说8 分钟前
Spring AI 2.0 RAG:用 Metadata Filter 做多租户检索隔离
java·spring
WeiXin_DZbishe27 分钟前
基于springboot装修风格选择系统的设计与开发-计算机毕设【课程设计】77964
java·vue.js·spring boot·后端·python·php·课程设计
XZ-07000132 分钟前
week9-三元表达式
java·前端·python
云和数据.ChenGuang42 分钟前
name=“张三“ age=18 weight=100.3 print (name,age,weight)
java·服务器·前端
Yeswater1 小时前
从 NIO 到 Netty:五个坑,和一张把它填平的基础设施网
java·后端·netty
denlaku1 小时前
JDK 15 新特性详解
java·开发语言
荣码1 小时前
LangSmith可观测性:AI应用出bug根本不知道哪里出了问题,我踩了4个坑
java·python
十年Java程序媛2 小时前
Java 多线程基础与锁机制详解|进程线程、锁升级、synchronized 与 Lock 对比
java·开发语言·spring boot
弯_弯2 小时前
FDE 的工程能力画像:数据接入、PoC 与可复用资产的落地口径
java·服务器·开发语言