关于如何打包/运行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. 1.2 认识python(了解)

    一.Python发展背景 Python的作者,Guido von Rossum(吉多·范·罗苏姆,中国Python程序员都叫他 龟叔),荷兰人.1982年,龟叔从阿姆斯特丹大学获得了数学和计算机硕士学 ...

  2. mybatis配置文件详解

    这是我看到的博文中最全的一篇了 参见:https://www.cnblogs.com/black-spike/p/7765732.html

  3. 第26月第6天 selenium

    1.selenium /** * @author Young * @param locator * @param values * @throws Exception */ protected voi ...

  4. C#后台画图保存为ipg/png的文件

    public void Exec1()        { string imgurl = @"http://api.senwoo.com/Content/HeadPortrait/" ...

  5. axios 在Vue全局引入的方法

    在main.js中: import axios form axios Vue.prototype.$axios = axios 组件中使用: submitFrom () { this.$axios.g ...

  6. 【try..catch..】【判断输入是否为空】【onchange事件】【onmouseover和onmouseout事件】【onmousedown和onmouseup事件】

    1.try..catch.. <body><script>function myFunction(){try{ var x=document.getElementById(&q ...

  7. Setup Collision and Overlap Event

    添加头文件 #include "Components/StaticMeshComponent.h" 禁用网格体组件的碰撞效果 MeshComp->SetCollisionEn ...

  8. 解决Nginx出现403 forbidden

    在之前我修改了nginx.conf,所以/home/ftpuser/www文件夹下应该有index.html或index.htm文件 将index.html或index.htm文件复制到/home/f ...

  9. 类ThreadLocal的使用与源码分析

    变量值的共享可以使用public static的形式,所有的线程都使用同一个变量.如果每个线程都有自己的共享变量,就可以使用ThreadLocal.比如Hibernat的session问题就是存在Th ...

  10. 【转】python之模块array

    [转]python之模块array >>> import array#定义了一种序列数据结构 >>> help(array) #创建数组,相当于初始化一个数组,如: ...