做项目的时候我们肯定接触过很多jar包,那么jar包是什么呢?笔者了解到jar是java archive file 的简写。从名字就可以知道,它的应用与Java息息相关。下面就详细介绍如何自己生成jar包,这样我们管理我们自己的代码(尤其是一些比较重要而且不会或者很少有修改的代码)。

 安装好JDK之后,jar.exe就已经安装好了。在命令行中键入jar命令之后,就会出现下图。里面详细的介绍了jar命令的用法:

  

 下面我们举例介绍jar命令的一些比较常用的用法。

 一.jar cvf 生成jar包的完整名称 要生成的class文件所在目录以及名称

  例如: jar cvf d:/test.jar e:/review/coreJava/chapter4/Employee.class 表示将目录e:/review/coreJava/chapter4下面的Emlopyee.class生成jar文件并存放在d盘下面的test.jar里面。效果如下:

  

  在d盘下面查看,证明已经生成了jar文件:

  

  这是将一个单独的class文件生成jar包,那要是想将位于不同的包下面的大量的class文件打包生成jar文件,也即生成的效果如下图所示,又该怎么做呢?

  

  首先要想生成的效果如上图所示,那么第一步位于不同文件夹下面的.class文件必须使用package关键字打包。然后使用命令生成jar文件。例如,在笔者E:\review\coreJava目录下面有一些笔者平时练习时候的class文件,Java源文件代码中都对它们使用package关键字打包了。如图:

  

  那么使用如下命令就可以将其生成如上图所示的jar文件。步骤如下:

   1.首先上面四个目录中的所有class文件必须使用package打包,例如chapter5下面的所有class文件必须使用package review.coreJava.chapter5。

   2.在命令行里切换到review目录所在的目录下面,笔者这里应该切换到e:盘下面。(这一步很关键)

   3.使用如下命令: jar cvf d:/test.jar review/coreJava。

  回车之后会看到如下所示表示成功:

   

  将其导入到Eclipse中,可以看到如下图所示:

   这样就可以像使用其他jar包一样使用你自己的jar包了。

 二.jar cf 生成jar包的完整名称 要生成的class文件所在目录以及名称

  这个命令的使用方法和上面一样,唯一的区别就是这个命令在生成jar文件的过程中不会显示详细信息。如图:  

  

  虽然没有显示详细信息,但是它的的确确生成了example.jar。

  

 三.jar tf 生成jar包的完整名称 要生成的class文件所在目录以及名称

  使用方法同上。区别是该命令会显示文件中包含的所有目录和文件名列表。笔者这里就不一一演示了。

 四.jar tvf 生成jar包的完整名称 要生成的class文件所在目录以及名称

  使用方法同上。区别是除了显示文件中包含的所有目录信息和文件列表以外,还会显示各目录和文件的大小、创建时间等信息。

 以上就是有关生成jar文件的方法,希望博友提出更好的方式。转载请指明出处。

Java中jar命令详解的更多相关文章

  1. java之jar命令详解

    1. JAR 文件包 JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式.JAR 文件非常类似 ZIP 文件——准确的说, ...

  2. 把java文件打包成.jar (jar命令详解)

    把java文件打包成.jar (jar命令详解) 先打开命令提示符(win2000或在运行框里执行cmd命令,win98为DOS提示符),输入jar Chelp,然后回车(如果你盘上已经有了jdk1. ...

  3. [转] - JAR文件包及jar命令详解 ( MANIFEST.MF的用法 )

    常常在网上看到有人询问:如何把 java 程序编译成 .exe 文件.通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像. chm 文档一样双击运行了:而另一种是使用 JET 来进 ...

  4. Java中日志组件详解

    avalon-logkit Java中日志组件详解 lanhy 发布于 2020-9-1 11:35 224浏览 0收藏 作为开发人员,我相信您对日志记录工具并不陌生. Java还具有功能强大且功能强 ...

  5. oracle中imp命令详解 .

    转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...

  6. Java axis2.jar包详解及缺少jar包错误分析

    Java  axis2.jar包详解及缺少jar包错误分析 一.最小开发jar集 axis2 开发最小jar包集: activation-1.1.jar axiom-api-1.2.13.jar ax ...

  7. java中的注解详解和自定义注解

    一.java中的注解详解 1.什么是注解 用一个词就可以描述注解,那就是元数据,即一种描述数据的数据.所以,可以说注解就是源代码的元数据.比如,下面这段代码: @Override public Str ...

  8. Java中dimension类详解

    Java中dimension类详解 https://blog.csdn.net/hrw1234567890/article/details/81217788

  9. [转载]java中import作用详解

    [转载]java中import作用详解 来源: https://blog.csdn.net/qq_25665807/article/details/74747868 这篇博客讲的真的很清楚,这个作者很 ...

随机推荐

  1. Windows 8.1及Windows8 JDK环境变量配置

    一.首先安装JDK JDK:http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html 根据操作系统选择相应的版本 二. ...

  2. JAVA中的数据结构——集合类(线性表:Vector、Stack、LinkedList、set接口;键值对:Hashtable、Map接口<HashMap类、TreeMap类>)

    Java的集合可以分为两种,第一种是以数组为代表的线性表,基类是Collection:第二种是以Hashtable为代表的键值对. ... 线性表,基类是Collection: 数组类: person ...

  3. linux网络编程笔记——UDP

    目前这部分代码会出现阻塞问题,暂时尚未解决 #include "udp.h" #include <stdio.h> #include <string.h> ...

  4. CentOS 7 最小化安装之后安装Mysql

    启动网卡 验证网络管理器和网卡接口状态 # systemctl status NetworkManager.service # nmcli dev status 修改网卡配置文件 通过上一步可以看到有 ...

  5. Java多线程编程模式实战指南:Active Object模式(上)

    Active Object模式简介 Active Object模式是一种异步编程模式.它通过对方法的调用与方法的执行进行解耦来提高并发性.若以任务的概念来说,Active Object模式的核心则是它 ...

  6. Nginx和Tengine的详细安装图文教程(Linux下)

    简洁安装 安装依赖 yum -y install gcc openssl-devel pcre-devel zlib-devel 编译三步走./configure \ --prefix=/opt/sx ...

  7. Apache Spark GraphX的使用简介

    类似 Spark 在 RDD 上提供了一组基本操作符(如 map, f ilter, reduce), GraphX 同样也有针对 Graph 的基本操作符,用户可以在这些操作符传入自定义函数和通过修 ...

  8. work7

    uno. 理解C++变量的作用域和生命周期 没有要求讲解我就简单注释了一下~ #include <iostream>int main(){ for (int i=0;i<10;i++ ...

  9. BestCoder Round #66 (div.2) hdu5592

    GTW likes math Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  10. linux下登陆用户的行为信息—w和who命令详解

    查看用户的操作系统管理员若想知道某一时刻用户的行为,只需要输入命令w 即可,在SHELL终端中输入如下命令: [root@localhost ~]# w 可以看到执行w命令及显示结果. 命令信息含义上 ...