eclipse生成export生成jar详解

时间:2021-12-26 06:15:32

使用eclipse打jar包可能还有很多人不是很了解,今天特意测试整理一番。

打jar包有3种形式

JAR file               JAR

Javadoc              java文档

Runnable JAR file      可运行JAR文件

eclipse生成export生成jar详解

第一种生成可执行的jar:

用eclipse 的 export runable jar file  (这个选项应该是后期eclipse版本才有的吧,发现网上好多介绍eclipse打jar包的文章中给出的图片都没有这个选项)

eclipse生成export生成jar详解

在Launch configuration:选择要打jar包的mian所在的类名,启动配置,main函数的入口类

Export destination 意思是将生成的jar包放在哪,选择一个路径

Library handing (库的管理)

第一个  提取需要的类库(以解压的形式)放到生成的 jar 文件中

用这个打出来的jar包,大小是三个选项中居中的一个

第二个   将需要的Jar库包放到生成的 jar 文件中,也就是将第三方的jar文件存放在你新生成的jar文件中,所以这个选项生成出来的文件是最小的(但往往会出现问题,可能是些路径问题吧!在下面会贴出各自的MANIFEST.MF)

第三种  将需要的库拷贝到一个子文件夹并放在生成的 jar 文件旁边(这个往往生成的总大小最大,但好像也最稳定可行)

Extract required libraries into generated JAR 抽出依赖库到生成的JAR

Package required libraries into generated JAR 打包依赖库到生成的JAR

Copy required libraries into s sub-folder next to the generated JAR 拷贝依赖库到产生JAR的子文件

第一个及第三个MANIFEST.MF

都是如下形式

eclipse生成export生成jar详解

而第二个确实这样的

eclipse生成export生成jar详解

越复杂,往往问题也就越多, 我个人喜欢第三种!

第二种生成一般的jar

执行 Export  ------->JAR file

eclipse生成export生成jar详解

这里有几个选项:
    * Export generated class files and resources 表示只导出生成的.class文件和其他资源文件
    * Export all output folders for checked projects 表示导出选中项目的所有文件夹
    * Export java source file and resouces 表示导出的jar包中将包含你的源代码*.java,如果你不想泄漏源代码,那么就不要选这项了
    * Export refactorings for checked projects 把一些重构的信息文件也包含进去
在Select the export destination中选择导出的jar的路径:

Options:的操作

Compress the contents of the JAR file  压缩精简 jar文件的内容

Add  directory entries   增加目录条目(很少人知道这个选项有什么用,其实他真的很有用!

在spring中有个这样的标签 <context:component-scan  />,它可以用来自动扫描包, 但是如果在你打的jar包里要不勾选Add  directory entries,那么你这个jar包,就不能spring的jar包那样 可以被扫描到)

Overwrite existing files without warning  没有警告的情况下覆盖现有的文件

Options:的操作我喜欢都勾选

点击NEXT

eclipse生成export生成jar详解

本页面 就是说,编译时的一些 错误警告 是否导出,

eclipse生成export生成jar详解

jar文件的一些描述信息是否放在工作空间中,这要看你自己的需要

如果你生成的jar 文件不是用来运行的,那么直接finish就OK 了,如果继续NEXT

eclipse生成export生成jar详解

这个页面 其实是用来配置一些MANIFEST.MF的信息,主要目的是生成可运行的jar,(因为以前的eclipse版本是没有export runable jar file  )

其实这个页面就类似手动配置MANIFEST.MF而export runable jar file 是自动生成一个MANIFEST.MF

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a284826009/article/details/20862749