第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

什么是胖jar包?

標(biāo)簽:
Java JVM

当我们使用基于JVM的语言如Java和Kotlin开发的应用程序时,我们通常会生成的一个常见文件是JAR(Java Archive)文件

一个 JAR 文件包含了所有编译后的类文件,以及一些元数据和资源。JAR 文件还采用了 ZIP 压缩方式,这不仅减小了文件大小,也便于分发和传输。

所以,我们来看一个例子。

假设你在做一个 Kotlin 项目,你的目标是构建一个可以被其他基于 JVM 的项目使用的库。

你得知道,在JVM项目的开发中,我们通过在pom.xmlbuild.gradle文件中添加依赖项来导入库。这些依赖项通常会从Maven中央仓库下载。

现在我们的目标是,也让新建立的库能够通过Maven中央仓库获取,这样其他人就能用了。

你认为我们应该发布什么到 Maven 中央仓库作为我们项目的构件?

你说得没错,我们将发布的是一个JAR文件,因为它包含了所有我们打算分发的编译后的类文件。

好吧,到目前为止我们一直在讨论JAR文件。胖jar文件又是怎么回事?胖jar文件到底是什么?

让我们通过那个示例项目继续理解同样的概念。假设你也想将同一项目作为命令行界面(CLI,即Command Line Interface的缩写)分发,这样用户就能够在他们的命令行界面中直接运行它。

为了让JAR文件能够运行,我们需要包含一个META-INF/MANIFEST.MF文件,该文件指定了命令行程序的入口。

一旦我们做到了那一步,就可以用命令 java -jar <jar-file> 运行 JAR 文件了。

但当你运行这个命令时,它会吐出一些依赖相关的错误。

那是因为,在创建JAR文件时,默认情况下它并不会包括所有的依赖库。因此,如果我们尝试运行这个JAR文件,会遇到缺少依赖库的错误。

要解决这个问题,我们需创建一个 胖Jar文件,正如你可能已经猜到的,这是一个包含所有依赖和我们项目Jar文件的胖Jar文件。

这样的一胖JAR文件就可以直接运行而不会出错。它实际上是一个自包含的文件,无需依赖任何外部文件即可运行。

—— ——

CLI 应用程序就是一个 fat JAR 很有用的实例。在其他一些场景中也可能很有用。

要创建一个胖Jar,你可以使用例如https://github.com/johnrengelman/shadow这样的插件。

此外,你可以寻求像ChatGPT这样的工具或其他资源,如果你想了解如何创建一个的话。

希望你喜欢这篇博客哦!回头见!

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消