关于如何打包/运行jar包,以及生成exe文件。之前各种查询、博客,终于搞明白究竟是咋回事。记得还做过笔记的。今天要打包生成exe用的时候,居然忘了咋怎来着。去查看之前的笔记,死活没找到(好像被删掉了)。决定写下来,以便之后随时调用。

一、jar包

  什么是jar包?jar包即(Java Archive File),也就是java归档文件。JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的。jar分为:一般jar包和可执行jar包。

二、如何打包成jar包

  ①使用eclipse进行打包                   

1.选择要打包的工程-->鼠标右键-->选择Export

  

2.导出为一般jar包 和 可执行jar包

  ②使用命令进行打包成jar包         (已配置好java环境,可直接在控制台输入jar查看命令帮助)

打包为一般jar包

  1)使用eclipse编写的程序:class文件在bin目录下,src中是源文件。

  步骤:在工程目录下运行CMD,输入命令: jar cvf jarPackageName.jar -C bin . 

     会在工程目录下生成jar包文件。

  2)使用编辑器编写的,且编译后的.class文件,根据目录进行打包,若单个或多个class文件则

  步骤:在class文件目录下运行CMD,输入命令:jar cvf jarPackageName.jar No1.class No2.class

打包为可执行jar包

  1)使用eclipse编写的程序:导出的可执行jar 不要需进行修改,可直接运行jar包。

  2)使用编辑器编写的,且编译后的.class文件。(jar cvfm jarPackageName.jar MANIFEST.MF bin .)

  步骤:创建MANIFEST.MF文件,在文件按格式写下

    Manifest-Version: 1.0
    Created-By: 1.6.0_22(Sun Microsystems Inc.)
    Class-Path: .
    Main-Class: MianClass

  Manifest-Version 指清单版本,默认生成Manifest-Version: 1.0

  Created-By 指创建作者,默认生成Created-By: 1.6.0_22 (Sun Microsystems Inc.)

  Class-Path 指主类所在路径

  Main-Class 指程序的主类 main 方法的类。

  在class文件目录下CMD中,输入命令:jar cvfm jarPackageName.jar MANIFEST.MF *.class

  注 : 

>>从eclipse生成的一般jar包和可执行jar中可以看出:一般jar 包中的MANIFEST.MF文件没有指定Main-Class,而可执行jar包中是含有的。

>>可执行的jar包中必须指定Main-Class,否则会提示“jar包中没有主清单属性”。

>>若MANIFEST.MF文件中只写Main-Class时,需要在末尾敲回车。

三、运行jar包

  在jar包目录下进入CMD,输入命令:java -jar jarPackageName.jar 

四、生成exe文件

前提准备:exe4j_window-x64.exe;可执行jar包

1.欢迎界面

2.选择“JAR in EXE ” mode ,点击Next

3.应用程序配置,输入程序名称。及保存exe文件的路径

4.选择可执行的程序类型,输入exe文件名,点击Next(其他选项可不填)

若有需要可选择设置

5.选择jar包和jar包中的Main-class,点击Next

6.设置程序的运行环境。点击Next

7.一直点击Next,进入该界面(生成exe程序界面).成功会直接进入Finished界面。否则出现弹出报错

8.完成

如何打包/运行jar包,及生成exe文件的更多相关文章

  1. maven本地安装jar包同时生成pom文件

    maven 本地安装jar包:mvn install:install-file -Dfile=本地路径/ojdbc12.jar -DgroupId=com.oracle -DartifactId=oj ...

  2. 原!!jar包 --可执行exe文件--安装包

    这几天由于部门统计名单,都是一边报,一边统计,感觉麻烦,写了个小工具,做成安装包.其他不多说,网上都有,我就自己按照网上操作,碰到了一些问题,对这些问题说下. ----------废话少说------ ...

  3. 用exe4j将jar包转成.exe文件的教程

    标准版教程再这里 http://pan.baidu.com/s/1i3gn0Br 1.    下载安装exe4j文件,并把你的java文件生成jar格式的文件,在桌面新建一个文件夹,把jar文件放进去 ...

  4. Java多线程之赛跑游戏(含生成exe文件)

    在JavaSE中,多线程是一个重要的内容. 我们要了解多线程的概念,就要先了解进程的概念:要了解进程的概念,就离不开操作系统的概念. 在一台正常运行的电脑中,计算机硬件(如CPU.内存.硬盘.网卡.显 ...

  5. 【Maven学习】Maven打包生成普通jar包、可运行jar包、包含所有依赖的jar包

    http://blog.csdn.net/u013177446/article/details/54134394 ******************************************* ...

  6. .bat文件和Jar包的生成及运行

    .bat文件和Jar包的生成及运行 1.Jar包简单介绍 Jar包是Java中所特有的一种压缩文档,有点类似于zip包,区别在于Jar包中有一个META-INF\MANIFEST.MF文件(在生成Ja ...

  7. 【spring cloud】【IDEA】【Maven】spring cloud多模块打包,打包的jar包只有几k,jar包无法运行,运行报错:no main manifest attribute, in /ms-eureka.jar

    ======================================================================================== 引申:maven打包多 ...

  8. maven 打包可运行jar包(转)

    目录 1.前提 2.方法一:使用maven-jar-plugin和maven-dependency-plugin插件打包 3.方法二:使用maven-assembly-plugin插件打包 4.方法三 ...

  9. Spring boot框架项目,使用maven命令将配置文件打包到jar包外,项目运行读取jar外配置文件

    1.1      在eclipse中配置maven命令 Mvn -e clean package -Ptest -DskipTests=true 1.1.1    执行命令之后得到jar 1.2    ...

随机推荐

  1. HTML字体自动换行第二行缩进一格

    p {text-indent: -2em; margin-left: 2em;}设置text-indent: -2em;以后p标签中第一行文字向左偏移,这样第二行开始的文字就等于缩进了,但是这样设置会 ...

  2. 洛谷P1972 【[SDOI2009]HH的项链】

    这道题想了很久,发题解是为了理解的更深刻一点...(管理放我过好嘛qwq) 步入正题:这道题应该是很多做法,我选择的是离线+树状数组. 首先输入数组.用fisrt数组先记录元素最开始出现的位置,对应的 ...

  3. ES6走一波 Generator异步应用

    Generator 函数的异步应用 JS异步编程 callback Promise(解决回调地狱) 事件 发布订阅 generator Thunk函数  屁股函数 两次高阶调用的函数 第一次调用的入参 ...

  4. 【节点-添加标签】【节点-删除标签】【显示年-月-日-星期】【math算数】【正则表达式】

    1.节点-添加标签 <body><div id="div1"><p id="p1">这是一个段落.</p>< ...

  5. Jquery中AJAX参数详细(1)-转

    http://www.cnblogs.com/qiufuwu618/archive/2012/12/20/2826190.html Jquery中AJAX参数详细列表: 参数名 类型 描述 url S ...

  6. php编程 之 php进阶练习

    1,php的date相关操作: PHP date() 函数可把时间戳格式化为可读性更好的日期和时间. <?php echo date("Y/m/d") . "< ...

  7. Deep Learning(花书)教材笔记-Math and Machine Learning Basics(线性代数拾遗)

    I. Linear Algebra 1. 基础概念回顾 scalar: 标量 vector: 矢量,an array of numbers. matrix: 矩阵, 2-D array of numb ...

  8. IObservable 接口

    转载自:https://jingyan.baidu.com/article/d3b74d64ac3b6c1f77e609c1.html 方法/步骤     IObserver<T> 和 I ...

  9. Linux DTS(Device Tree Source)设备树详解之二(dts匹配及发挥作用的流程篇)【转】

    转自:https://blog.csdn.net/radianceblau/article/details/74722395 版权声明:本文为博主原创文章,未经博主允许不得转载.如本文对您有帮助,欢迎 ...

  10. 微信小程序-下拉松开弹不回去顶部留一段空白

    解决办法: 空白的出现有可能是多次触发下拉事件导致请求过多导致页面反应延迟. 在 onPullDownRefresh 事件里加setTimeout事件延迟下下拉刷新的事件. /** * 页面相关事件处 ...