1、不包含 第三方jar 的情况:

 (1)项目右键--> Export... --> 选择"JAR file"(记得有看到有的博客上写的是选择"Runnable JAR file",未尝试过,不知道干啥用的 区别是啥...)--> Next

  

 (2)确认 选中的项目是正确的项目--> 在"JAR file:"的文本框中 选择好路径 填写好jar的名字 -->其它默认-->Next

  

 (3)保持默认 --> Next

  

 (4)我记得应该就是这个样子的... --> Finish

  

2、包含 第三方jar 的情况:

 就是上面的(4)不同,变成这个样子:

  

 指明 需要的 MF文件,其实就是 根据MF里面配置的规则来生成jar

 2.1、在这个过程中还遇到了一个问题插曲:

C:\Users\33\Desktop\DB>java -jar Oracle10.2.0.4.jar
Oracle10.2.0.4.jar中没有主清单属性 C:\Users\33\Desktop\DB>

  运行 jar的时候 报错“Oracle10.2.0.4.jar中没有主清单属性”

  其实原因是 MF的配置不对...

 2.2、在 文章“如何使用Eclipse将包含第三方jar库的java工程打包成jar包 - Borny鼎鼎的博客 - CSDN博客.html”(https://blog.csdn.net/vinegar93/article/details/78467591)中,

  有给出示例的MF文件内容:

Manifest-Version: 1.0
Class-Path: lib/commons-io-2.4.jar lib/httpclient-4.4.1.jar lib/httpcore-4.4.1.jar lib/httpmime-4.4.1.jar lib/jcl-over-slf4j-1.7.7.jar lib/noggit-0.6.jar lib/slf4j-api-1.7.7.jar lib/stax2-api-3.1.4.jar lib/woodstox-core-asl-4.4.1.jar lib/zookeeper-3.4.6.jar lib/solr-solrj-5.5.2.jar
Main-Class: cn.hwd.main.M

  也给出了 MF文件的注意事项:

第一行是MAINIFEST的版本,第二行Class-Path就指定了第三方jar包的位置,第三行指定我们要执行的包含main方法的java文件。
注意:
(1)Class-Path和Main-Class后边都有一个空格。
(2)假设我们的项目打包后为test.jar,那么按照上面的定义,应该在test.jar的同层目录下建立一个lib文件夹,并将相关的jar包放在里面。
(3)Main-Class后面是类的全地址。
(4)写完Main-Class后一定要回车(即最后一行是空白行)。

  ZC:可能是博客内容的原因,我看到 MF文件内容是3行,也就照着样子 写了3行,结果就报错 “Oracle10.2.0.4.jar中没有主清单属性”

  ZC:其实,我就是少了 最后的一个空白行(没在"Main-Class"后面敲回车)...

3、上面的 生成包含第三方jar的jar文件的方式,采用的方式实是 :指明第三方jar的相对路径,使得 我们的jar程序能够找到 第三方的jar并正确的调用它。

  还有一种方式,是将 第三方jar 一起打包到 目标jar里面,是使用 Fat jar插件的安装方式,以前用过一次,后面就没用到它了,这里就不记录详细过程了。

  参考网址:通过Eclipse生成可运行的jar包 - xiangyong2008的专栏 - CSDN博客.html(https://blog.csdn.net/xiangyong2008/article/details/6446887

  关键字:net.sf.fjep.fatjar_0.0.31.zip

  PS:net.sf.fjep.fatjar_0.0.31.zip 之前下载过,网页内容之前也保存过,公司的机子ThinkPadE440的路径"E:\From_Home\java__html解析__相关\33SouFang\java__通过Eclipse生成可运行的jar包"中可以找到它们,家里的机子ThinkPadE40 在 文件夹"XXX相关"中也能找到

4、

5、

Eclipse.导出可执行的jar(包含第3方jar)的更多相关文章

  1. eclipse导出可执行jar包步骤

    按步骤图文说明 第一步:选择要导出的工程,右键[export] 第二步:双击Java文件夹下的[Runnable Jar File] 第三步:该步骤分4步走 3.1 从下拉框选择该jar的入口文件,即 ...

  2. Eclipse导出可执行Java工程/可执行Jar文件(包含第三方Jar包)

    1. 首先,右键你的Java工程,选择Export,在Java文件夹下选择Runnable JAR file,如下图所示: 2. 选择Runnable JAR file后,会弹出如下所示的对话框,选择 ...

  3. Eclipse导出可执行Jar文件(包含第三方Jar包)

    1. 首先,右键你的Java工程,选择Export,在Java文件夹下选择Runnable JAR file,如下图所示: 2. 选择Runnable JAR file后,会弹出如下所示的对话框,选择 ...

  4. eclipse 导出可执行jar文件

    step1: step2: step3: 结果: E:\executable\META-INF\MANIFEST.MF Manifest-Version: 1.0 Main-Class: cn.zno ...

  5. eclipse导出带有图片、音效、其他二进制文件的jar文件的经历

    先说下简单流程吧: 1.选中“项目”,右键->export->java的“jar file”->勾选“export generated clas files and resource ...

  6. Ant-编译构建(2)-第3方jar包引入、log4j2

    1.项目目录结构图,lib包引入了一些关于common logging+log4j2相关的jar. 2.编写相关的build.xml <?xml version="1.0" ...

  7. Eclipse导出包含第三方Jar的工程

    基于第三方开源的Jar包封装了一个工具类,在导出成Jar包后,引用新生成的Jar包,却报找不到类的错误.看了一下生成的Jar包,发现根本没有包含第三方Jar包的相关class.这是导出第三方Jar包时 ...

  8. eclipse export runnable jar(导出可执行jar包)

    eclipse export runnable jar(导出可执行jar包) runnable jar可以执行的 如果要导出可运行的JAR文件,需要选择Runnable Jar File. 1. 选择 ...

  9. Eclipse如何导出可执行jar包

    在编写shell脚本时用到了可执行的jar包,而jar包从Eclipse中导出时需要同时导出jar文件以及库文件夹,具体导出方式如下: (1)点击主方法所在的java,运行java applicati ...

随机推荐

  1. 【转载】web开发中 web 容器的作用(如tomcat)

    我们讲到servlet可以理解服务器端处理数据的java小程序,那么谁来负责管理servlet呢?这时候我们就要用到web容器.它帮助我们管理着servlet等,使我们只需要将重心专注于业务逻辑. 什 ...

  2. 170504、MongoDB和MySQL对比(译)

    一.概要 几十年来,关系型数据库已经成为企业应用程序的基础,自从MySQL在1995年发布以来,它已经成为一种受欢迎并且廉价的选择.然而随着近年来数据量和数据的不断激增,非关系数据库技术如MongoD ...

  3. Oracle涂抹oracle学习笔记第8章RMAN说,我能备份

    本次测试服务器为172.16.25.33 使用rman连接本地数据库 rman target / 在rman中执行启动与关闭的命令与sqlplus相同 在rman中执行sql语句 sql ‘需要执行的 ...

  4. VirtualBox vbox not found

    VirtualBox vbox file not found Problem When I opened virtualbox, Today, it showed "inaccessible ...

  5. Webservice实践(七)CXF 与Spring结合+tomcat发布

    上一节介绍了如何使用CXF 来发布服务,但是没有介绍使用web 容器来发布,很多项目需要用tomcat 这样的容器来发布.另外本节将介绍CXF 与spring 结合的方法. 一 目标: 1.利用spi ...

  6. tow sum

    今天面试好打脸!!! 解决方案方法一:暴力法暴力法很简单.遍历每个元素 xx,并查找是否存在一个值与 target−x 相等的目标元素. public int[] twoSum(int[] nums, ...

  7. Android(十六 ) android 与蓝牙串口通讯

    1.得到蓝牙适配器 BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); 2.打开蓝牙 if (!mBl ...

  8. MongDb的安装

    MongoDB是一个基于分布式文件存储的数据库,由c++语言编写,为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB属于非关系数据库,也不能说完全属于,更像是介于关系数据库和非关系数据库之 ...

  9. [Axiom 3D]3.SceneManager场景管理器

    首先看看Axiom.Core命名空间下public abstract class SceneManager : DisposableObject A SceneManager organizes th ...

  10. CentOS 7 集群使用NTP进行时间同步

    NTP时钟同步方式说明NTP在linux下有两种时钟同步方式,分别为直接同步和平滑同步: 直接同步 使用ntpdate命令进行同步,直接进行时间变更.如果服务器上存在一个12点运行的任务,当前服务器时 ...