jar命令的用法:

下面是jar命令的帮助说明:

用法:jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...

选项包括:

-c 创建新的归档文件

-t 列出归档目录

-x 解压缩已归档的指定(或所有)文件

-u 更新现有的归档文件

-v 在标准输出中生成详细输出

-f 指定归档文件名

-m 包含指定清单文件中的清单信息

-e 为捆绑到可执行 jar 文件的独立应用程序

指定应用程序入口点

-0 仅存储;不使用任何 ZIP 压缩

-M 不创建条目的清单文件

-i 为指定的 jar 文件生成索引信息

-C 更改为指定的目录并包含其中的文件

如果有任何目录文件,则对其进行递归处理。

清单文件名、归档文件名和入口点名的指定顺序

与 "m"、"f" 和 "e" 标志的指定顺序相同。

示例 1:将两个类文件归档到一个名为 classes.jar 的归档文件中: jar cvf classes.jar Foo.class Bar.class 示例 2:使用现有的清单文件 "mymanifest" 并 将 foo/ 目录中的所有文件归档到 "classes.jar" 中: jar cvfm classes.jar mymanifest -C foo/ .

下文假设编译后的class文件在bin目录下

一、打包成一般的jar包

输入如下命令即可: Cmd代码 复制代码 收藏代码

jar cvf counter.jar -C bin .

其中,“-C bin”实际上是告诉jar命令先cd到bin目录下,再在此目录执行没有参数“-C bin”的命令,等价于:

Cmd代码 复制代码 收藏代码

cd bin

jar cvf counter.jar . // "."代表当前路径

二、打包成可运行的jar包

要打包成可运行的jar包,有两种方法,一是手动创建MANIFEST.MF文件,并在其中指定主类;二是使用jar的-e参数指定可运行jar包的入口点(即main类的完全名称).

以Java源代码行数统计程序的打包为例,演示如何打包:

手动创建MANIFEST.MF文件:

1)首先编辑MANIFEST.MF文件,内容如下: Mf代码 收藏代码复制代码

Manifest-Version: 1.0

Created-By: rsljdkt

Class-Path: .

Main-Class: Main

说明:

第一行指定清单的版本,若无,则JDK默认生成:Manifest-Version: 1.0

第二行指明创建的作者,若无,则JDK默认生成Created-By: 1.6.0_22(Sun Microsystems Inc.)

第三行指定主类所在类路径,

第四行指明程序运行的主类

2)使用jar命令进行打包: Cmd代码 复制代码 收藏代码

jar cvfm counter.jar MANIFEST.MF -C bin .

说明:

参数f:指定打包后的包名。

参数m:指定自定义的MANIFEST.MF清单文件,否则,JDK会自动生成不包含Main-Class的默认清单。

参数c:指定是创建新的归档文件。

参数v:在标准输出中生成详细输出,该选项是可选的。

使用-e参数指定入口点:

执行如下命令即可:

Cmd代码 复制代码 收藏代码

jar cvfe counter.jar Main -C bin .

方法二:使用Eclipse的Export功能:

一、打包成一般的jar包:

步骤如下:

1)在要打包的项目上右击,选择Export

2)在弹出的窗口中,选择Java -> JAR File,然后点击next按钮

3)在JAR File Specification窗口中,设置打包成的文件名和存放位置,点击两侧next

4)在JAR Manifest Specification窗口中,设置MANIFEST.MF清单文件的配置,

若仅仅打包成单纯的jar包的话,不用做任何修改,采取默认即可

若打包成可执行jar包的话,可以使用已存在的MANIFEST文件或者直接选择Main class

5)点击Finish按钮,完成打包。

二、打包成可运行的jar包

步骤如下:

1)在要打包的项目上右击,选择Export

2)在弹出的窗口中,选择Java -> Runnable JAR File,然后点击next按钮

3)在Runnable JAR File Specification窗口中,选择Launch configuration和Export destination

4)点击Finish按钮,打包完成。

java 代码打包_Java程序打包成jar包相关推荐

  1. java代码自动对齐_java程序实现编写代码时变量名垂直对齐的风格

    记录英语单词时,想把英语和中文翻译分别对齐,有些人写代码喜欢把变量按这种方式对齐.在网上没搜到相关方法,于是自己试着写代码去实现,原本以为很简单,写的时候才发现有不少问题.先看效果: 普通的 对齐前: ...

  2. linux java jar打包_【Java】Java程序打包成jar包在Linux上运行

    当需要把在Windows上开发的Java程序用在Linux上运行时,就需要吧该Java程序打包成jar包上传到Linux上去运行. 1.Java程序用MyEclipse打包成可运行的jar包 (1)在 ...

  3. 将写好的java代码打包成jar包并且运行

    一.前言 今天那记录一下jar包的打包以及运行的过程,还是老样子大佬勿喷有问题求告知,谢谢啦. 二.直奔主题 1.首先通过idea写一段简单的Java代码如下图所示 2.写好后我们找到如下图的图标,点 ...

  4. java文件打包成jar文件_将java文件打包成jar包步骤

    将mypackage包中的FrameDemo.java文件打包成可执行成jar包 步骤1:先将程序中所有类打包成一个包 编译mypackage包FrameDemo.java文件,将类文件存入D盘Jar ...

  5. java打包拆包_[Java] Java 打包成jar包 和 解压jar包

    解压jar包 jar xf xxx.jar 打包成jar包 方法一:通过jar命令 jar命令的用法: 下面是jar命令的帮助说明: 用法:jar {ctxui}[vfm0Me] [jar-file] ...

  6. java数据库打包_java程序需要连接数据库 如何打包

    java程序需要连接数据库 如何打包 关注:243  答案:4  mip版 解决时间 2021-01-18 17:35 提问者浅沫记忆 2021-01-18 13:46 java程序需要连接数据库 在 ...

  7. java 中如何打包成 jar 包

    这里写目录标题 1. java 中如何打包成 jar 包 1.1. 手动打包可直接执行的 jar 包 1.2. 使用 intellij idea 工具打包可直接执行的 jar 包 1. java 中如 ...

  8. 问题备忘: 将工程打包成jar包运行,就报java.io.FileNotFoundException: class path resource错误

    最近在在使用@Value注入文件碰到如下问题: 工程在在IntelliJ IDEA开发环境里正常运行,但是一旦将工程打包成jar包运行,就报java.io.FileNotFoundException: ...

  9. idea中将java项目中的单个类打包成jar包

    文章目录 打包jar包 导入jar包使用 JAR文件的全称是Java Archive File,即Java档案文件.JAR文件是一种压缩文件,与常见的ZIP压缩文件兼容,被称为JAR包.JAR文件与z ...

  10. IDEA下maven编译打包Java项目成jar包但是resource下配置文件打包不成功

    今天在IDEA下打包一个Java项目,准备打包成jar包直接执行,打包之后运行时候一直提示resource下资源文件找不到,但我又确实配置了的,而且在IDEA上可以运行,但是打包成jar包之后就运行不 ...

最新文章

  1. R语言应用uniroot函数求解方程的根(一元解):仿真数据(方程式可视化、并添加y=0的水平横线)、uniroot函数求解方程的根(并添加方程根对应的垂直竖线)
  2. Python知识:关于map
  3. 微信企业号第三方应用开发[一]——创建套件
  4. latex正文显示运算符
  5. python 字典格式转换
  6. 计算机网络使用双绞线连接时,计算机网络技术期末试卷A
  7. arduino和轮毂电机接线_丰田Prius B电机技术解析
  8. 「leetcode」78. 子集【回溯算法】详解!
  9. Cesium中的primitive流光轨迹
  10. 电脑中缺少dll文件怎么解决?电脑dll文件要怎么打开?
  11. c++ PDFium pdf转为图片
  12. 壳的机制以及脱壳技术
  13. 身份实名认证API开发文档
  14. Flurry——统计和分析用户行为
  15. ORACLE的连接模式——专用服务器和共享服务器
  16. IDM短信发送接口设计说明
  17. TZT3822EN静态信号测试分析系统
  18. 转:宁愿在真实前颤抖,也不愿在催泪弹下哭泣(今何在)
  19. dp专题-cf 711c
  20. 广电网宽带 如果要远程连接阿里RDS数据库,设置了白名单也不行。

热门文章

  1. 日历2021年日历表|2021年日历表打印版 Excel版
  2. c语言代码自动整理,C语言代码自动整理工具
  3. 同志,云原生了解一下?
  4. OPPO K9 Pro刷root强解锁BL刷面具Magisk框架 oppo k9pro root教程
  5. Vue实例与组件实例
  6. kms服务器搭建及测试
  7. 用python计算ph_用于水和水蒸汽物性计算的Python模块——iapws
  8. 搭建FTP资源服务器
  9. C++ Socket服务器简单代码示例
  10. Springboot封装的好的发送post请求的工具类