Java命令行Jar包打包详解及实战
59 浏览量
更新于2024-09-01
收藏 495KB PDF 举报
本文档主要介绍了在Java命令行环境下对Jar包进行打包的基本操作和两种常见的打包方式。首先,我们了解到在Java中,使用`jar`命令行工具来进行Jar包的打包是非常基础且实用的操作。这个工具提供了一种灵活的方式来创建、更新和归档Java类文件、资源文件和依赖项。
一、jar指令简介
当你在命令行中输入`jar`并回车后,会显示出jar指令的相关选项和帮助信息,这些选项包括创建新jar文件、添加文件到现有jar、更新文件等。这为开发者提供了对jar包打包的控制和定制能力。
二、无MANIFEST清单文件的简单打包
对于结构相对简单、不涉及依赖或需要可执行入口的jar包,可以直接使用`jar cvf`(create verbose file)命令,将编译后的`.class`文件打包到一个名为`myJar.jar`的文件中。这种方式省略了MANIFEST文件,因此不支持使用`java-jar`命令直接运行,因为没有指定主类(Main Class)作为程序入口。
例如,假设我们有`test1.java`, `test2.java`和`Main.java`三者,编译后可以使用以下命令:
```
javac test1.java test2.java Main.java
jar cvf myJar.jar Main.class test1.class test2.class
```
三、带MANIFEST清单文件的打包
对于更复杂的项目,特别是需要包含依赖、设置主类或者需要可执行功能的jar,推荐使用MANIFEST文件。MANIFEST文件包含了关于jar包的重要元数据,如主类路径、依赖关系等。使用`jar cfm`(create with manifest file)命令,需要提供一个自定义的MANIFEST.MF文件,然后将文件和所需内容一起打包:
1. 创建一个MANIFEST.MF文件,例如:
```makefile
Manifest-Version: 1.0
Main-Class: com.example.Main
Class-Path: ./
```
这里`Main-Class`指定主类,`Class-Path`表示包中的类文件都在同一目录下。
2. 使用`jar cfm`打包:
```
javac test1.java test2.java Main.java
echo MANIFEST.MF > MANIFEST.MF
jar cfm myJar.jar MANIFEST.MF Main.class test1.class test2.class
```
这样打包的jar包可以通过`java -jar myJar.jar`直接执行,因为MANIFEST已经指定了主类入口。
总结,Java命令行下的Jar包打包涉及到基本操作、MANIFEST文件的作用、不同打包方式的选择以及如何根据实际需求配置。通过理解这些知识点,开发者能更好地管理和创建自己的Java库或应用的jar文件。
2020-08-28 上传
2009-06-11 上传
2020-08-25 上传
2019-08-02 上传
2018-05-14 上传
2015-01-22 上传
2012-08-31 上传
2022-05-07 上传
2021-07-13 上传
weixin_38640150
- 粉丝: 3
- 资源: 909
最新资源
- SSM动力电池数据管理系统源码及数据库详解
- R语言桑基图绘制与SCI图输入文件代码分析
- Linux下Sakagari Hurricane翻译工作:cpktools的使用教程
- prettybench: 让 Go 基准测试结果更易读
- Python官方文档查询库,提升开发效率与时间节约
- 基于Django的Python就业系统毕设源码
- 高并发下的SpringBoot与Nginx+Redis会话共享解决方案
- 构建问答游戏:Node.js与Express.js实战教程
- MATLAB在旅行商问题中的应用与优化方法研究
- OMAPL138 DSP平台UPP接口编程实践
- 杰克逊维尔非营利地基工程的VMS项目介绍
- 宠物猫企业网站模板PHP源码下载
- 52简易计算器源码解析与下载指南
- 探索Node.js v6.2.1 - 事件驱动的高性能Web服务器环境
- 找回WinSCP密码的神器:winscppasswd工具介绍
- xctools:解析Xcode命令行工具输出的Ruby库