Java:打包成jar包

简介: Java:打包成jar包

准备Java文件 Hello.java

public class Hello{
   public static void main(String[] args) {
       System.out.println("Hello");
   }
}

打包过程

$ javac Hello.java                # 编译成.class 文件
$ jar -cvf hello.jar Hello.class  # 打包
已添加清单
正在添加: Hello.class(输入 = 401) (输出 = 275)(压缩了 31%)
$ jar -xvf hello.jar              # 解压
  已创建: META-INF/
  已解压: META-INF/MANIFEST.MF
  已解压: Hello.class

记事本打开文件 META-INF/MANIFEST.MF, 添加Main-Class: Hello

Manifest-Version: 1.0
Created-By: 1.8.0_172 (Oracle Corporation)
Main-Class: Hello

再次打包

$ jar -cvfm hello.jar META-INF/MANIFEST.MF Hello.class
已添加清单
正在添加: Hello.class(输入 = 401) (输出 = 275)(压缩了 31%)
# jar -cvfm hello.jar META-INF/MANIFEST.MF -C demo/ .
# 打包demo文件夹下所有文件,注意后面的'.'
$ java -jar hello.jar # 执行jar包
Hello

打包参数

-c  创建一个jar包
-t  显示jar中的内容列表
-x  解压jar包
-u  添加文件到jar包中
-f  指定jar包的文件名
-v  输出详细报告
-m  指定MANIFEST.MF文件
-0  生成jar包时不压缩内容
-M  不生成清单文件MANIFEST.MF
-i  为指定的jar文件创建索引文件
-C  可在相应的目录下执行命令

参考

java打jar包的几种方式详解

Java Jar包压缩、解压使用指南

相关文章
|
6月前
|
Java 关系型数据库 Linux
Linux|Java|jar包的解压和重新打包(更新配置)
Linux|Java|jar包的解压和重新打包(更新配置)
316 0
Java实现多文件打包成压缩包下载
Java实现多文件打包成压缩包下载
261 0
|
15天前
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
23 4
|
18天前
|
Java Maven Android开发
【Azure Developer】VS Code打包Java maven Project 遇见 BUILD FAILURE
Unknown lifecycle phase "lean". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>
|
1月前
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
21 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
25天前
|
Java Maven 数据安全/隐私保护
如何实现Java打包程序的加密代码混淆,避免被反编译?
【10月更文挑战第15天】如何实现Java打包程序的加密代码混淆,避免被反编译?
40 2
|
1月前
|
Java C++
做了个Java打包工具,可以双击启动了!
本文介绍了作者日常使用Java和Swing进行开发的经验,以及Java程序分发时遇到的问题,如需要JRE环境。文中列举了几种常见的Java程序打包方法,并对比了各自的优缺点,最后作者结合这些方案,利用Winform开发了一款工具,将Java程序打包成二进制可执行文件,简化了分发流程。
做了个Java打包工具,可以双击启动了!
|
1月前
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
95 4
|
5月前
|
Java Linux Windows
java打包异常【已解决】
java打包异常【已解决】
29 5
|
5月前
|
分布式计算 Java Hadoop
简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行
简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行
56 0