携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第15天,点击查看活动详情
1️⃣前言
大家好,我是翼同学。今天笔记的内容是:
- jar包
2️⃣内容
什么是jar包?
在学习java时,了解到一个新概念:jar包。
那什么是jar包?
jar包,也就是jar文件(Java Archive)。可以这么理解,它类似于zip包。但与zip文件不同的是,jar文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可以被像编译器和 JVM 这样的工具直接使用。
- jar包通常可以用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,便于开发Java平台应用软件或库。JAR文件是跨平台的,所以不必关心涉及具体平台的问题。除了可以包括声音和图像文件以外,也可以在其中包括类文件。
因此,jar包就是一种归档文件,可将多个文件合成一个文件,以zip格式构建,以.jar为文件扩展名。用户可以使用JDK自带的jar命令创建或提取JAR文件。也可以使用其他zip压缩工具,不过压缩时zip文件头里的条目顺序很重要,因为Manifest文件常需放在首位。在 Java 平台中, Manifest 文件是 JAR 归档中所包含的特殊文件。Manifest 文件被用来定义扩展或文件打包相关数据。Manifest 文件是一个元数据文件,它包含若干键 - 值对数据。如果一个 JAR 文件被当成可执行文件,那么其中的 Manifest 文件需要指出该程序的主类文件。通常 Manifest 文件的文件名为 MANIFEST.MF。
jar包的特点
| 特点 | 具体含义 |
|---|---|
| 压缩 | JAR 格式允许您压缩文件以提高存储效率 |
| 包密封 | 存储在 JAR 文件中的包可以选择进行密封,以增强版本一致性和安全性。密封一个包意味着包中的所有类都必须在同一 JAR 文件中找到。 |
| 安全性 | 由于jar文件内容可以被数字化签名,因此能够识别签名的工具就可以有选择地为您授予软件安全特权,另外jar文件还可以被检测代码是否被篡改过。 |
| 减少下载时间 | 如果一个 applet 捆绑到一个 jar文件中,那么浏览器就可以在一个 HTTP 事务中下载这个 applet 的类文件和相关的资源,从而大大提高下载速度 |
| 传输平台扩展 | Java 扩展框架提供了向 Java 核心平台添加功能的方法,这些扩展是用 JAR 文件打包的 |
| 包版本控制 | 一个 JAR 文件可以包含有关它所包含的文件的数据,如厂商和版本信息。 |
| 可移植性 | 处理 JAR 文件的机制是 Java 平台核心 API 的标准部分。 |
jar包的用途
- 用于发布和使用类库
- 作为应用程序和扩展的构建单元
- 作为组件、applet 或者插件程序的部署单位
- 用于打包与组件相关联的辅助资源
3️⃣写在最后
好了,今天的笔记就记到这里。
备注-文章参考内容: