JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。当然也是有区别的,JAR包中有一个META-INF\MANIFEST.MF文件,当你找成JAR包时,它会自动生成。JAR包是由JDK安装目录\bin\jar.exe命令生成的,当我们安装好JDK,设置好path路径,就可以正常使用jar.exe命令,它会用lib\tool.jar工具包中的类。这些细节就不用管它了。



作为一个有点工作经验的码农,我们经常在玩新的项目的时候都会有自己的一套工具类,如果每次都用来自己将源码放入项目也太土了点,所以呢将自己写的经常用的java文件打包成jar以后方便自己使用就很有必要。这篇博客来整理下如何将java文件打包成jar文件。具体的分下面3种情况:

1,直接将自己的java文件打成jar文件

2,创建可执行的jar包

3,项目中有导入的第三方jar包,最后打成一个完整的jar包。

打包出来的jar包是不是可以执行的jar包,具体的可以去看jar包里面JAR包中有一个META-INF\MANIFEST.MF文件,如果有Class-Path,Main-Class2个属性就是可执行的,否则就是不是可执行文件。



这里我只整理下如何打包自己的java文件成jar包,其他的用不到,我有转载别人的文章,如果需要大家可以去看下。

有3种方式:一种是CMD打包,一种是使用eclipse。

1,CMD进去dos窗口,jar cvf linkin.jar .



2,使用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。选择程序入口如果没有自己写的main方法,就先在eclipse执行下就有了。

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



3,利用maven来打包,mvn install就可以打包成jar包,具体的pom如何下请看我的maven系列。

  最后补充3个dos指令:

  1,删除一个文件:del 文件名

  2,删除一个文件夹:rd 文件夹名,注意这个文件夹比如是空的

  3,运行一个可执行jar包文件:java -jar jar包名字





java打包成jar文件的更多相关文章

  1. 手把手教你如何把java代码,打包成jar文件以及转换为exe可执行文件

    1.背景: 学习java时,教材中关于如题问题,只有一小节说明,而且要自己写麻烦的配置文件,最终结果却只能转换为jar文件.实在是心有不爽.此篇博客教你如何方便快捷地把java代码,打包成jar文件以 ...

  2. 将Java代码打包成jar文件转换为.exe可执行程序方法

    ​ 做完学生管理系统后我想将代码打包成一个可执行程序,那样就可以直接点击在Windows下运行了,下面就跟大家分享下打包方法. 将Java的代码转换成 .exe 文件需要先把代码打包成 jar 文件然 ...

  3. Eclipse中将含有图片资源的项目打包成jar文件

    前言: 最近学了GUI编程和UDP协议,心血来潮想做一个局域网内的聊天软件,前期都还算顺利,直到后来将整个项目打包成jar文件时遇到了困难.如图: 自己设置的图标不见了,但是也没有默认的图标,说明图片 ...

  4. 如何将idea工程打包成jar文件

    如何将idea工程打包成jar文件 近日在工作中遇到了一个问题,需要把本地的java文件打成jar包,传到云服务器上运行.于是学习了一下如何在intellij idea中将java工程打成jar包. ...

  5. Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法

    方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 “MANIFEST.MF”, 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目 ...

  6. java程序打包成jar文件,使用到第三方jar包

    1.右击工程选择Export—>选择JAR file—>选择NEXT,如下图所示 2.选择需要打包的工程,并且选择存放目录,我这放在 E:\jartest 目录下,然后点击NEXT,如下图 ...

  7. 将引用了第三方jar包的Java项目打包成jar文件的两种方法

    方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 “MANIFEST.MF”, 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目 ...

  8. java打包成jar,但不打包配置文件

    有时候我们做java project的时候,都会打包成jar程序,为了方便部署会加个配置文件conf/pro.properties(conf文件夹与src文件夹同级) 但是不想打包进jar.其实用ec ...

  9. [Java] Java 打包成jar包 和 解压jar包

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

随机推荐

  1. NanUI文档 - 如何实现C#与Javascript的相互通信

    NanUI文档目录 NanUI简介 开始使用NanUI 打包并使用内嵌式的HTML/CSS/JS资源 使用网页来设计整个窗口 如何实现C#与Javascript的相互通信 如何处理NanUI中的下载过 ...

  2. Python进阶内容(五)--- type和object的关系

    面向对象编程(OOP)的两大关系 继承与实现 继承关系: 子类继承自父类(base),可以使用父类的一些方法(method)和属性(attribute) 实现关系: 以类为模板,实例化一个对象,即:对 ...

  3. python 3.x 与2.x的区别

    前言 保持学习的态度,学一门动态语言其实是很早以前的就准备要做的事情,当时还在纠结python与ruby.现在不单单是要学python,还在考虑用它做点什么,这些等后续再说吧,因为看的是python2 ...

  4. asp.net core 教程(五)-配置

    Asp.Net Core-配置 Asp.Net Core-配置 在这一章,我们将讨论 ASP.NET Core项目的相关的配置.在解决方案资源管理器中,您将看到 Startup.cs 文件.如果你有以 ...

  5. HDFS中namenode启动失败

    1.环境配置: -1.core-site.xml文件 <configuration> <property> <name>fs.defaultFS</name& ...

  6. Android的Environment.getExternalStorageState的使用

    1.sd状态 sd状态 现象描述  /mnt/sdcard目录是否存在 canRead返回 canWrite返回 MEDIA_MOUNTED  SD卡正常挂载 true true true MEDIA ...

  7. Python_day1

    一.HelloWorld >>>print("Hello World!") >>>Hello World! 二.变量    1.什么是变量 : ...

  8. BZOJ:4219: 跑得比谁都快 3007: 拯救小云公主

    4219: 跑得比谁都快 3007: 拯救小云公主 三角剖分的解释可以看这里:http://www.cnblogs.com/Enceladus/p/6706444.html 后一道是前一道的弱化版. ...

  9. HDU4920-Matrix multiplication-矩阵乘法 51nod-1137 矩阵乘法

    先贴两个基础的矩阵乘法,以后再贴一些题. hdu. Matrix multiplication Time Limit: 4000/2000 MS (Java/Others)    Memory Lim ...

  10. oracle ebs form开发总结

    item的布局千万不要去乱动,只要调好长宽和y轴的坐标就好了.form内部集成了很多代码对布局进行动态的调整,而且有一些代码的长宽什么的还是写死了的,我们一动,form可能就识别不了了,然后就显示出来 ...