提取和打包库到jar文件之间的区别 [英] Difference between extracting and packaging libraries into a jar file

查看:556
本文介绍了提取和打包库到jar文件之间的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道使用runnable jar文件创建从eclipse中提取和打包库到jar文件之间的区别。

I would like to know the difference between extracting and packaging libraries into a jar file from eclipse with the runnable jar file creation.

如果我的程序(runnable jar)使用其他需要这些外部库(罐子)的类,我应该选择什么?

If my program (runnable jar) uses other classes which require these external libraries(jars), what should I pick?

推荐答案

如果你想把罐放入你的生成jar文件,可以使用打包方法。
例如,如果您使用的是Apache库或其他第三方jar,您可能希望将这些jar保留在生成的jar中。在这种情况下,使用包装。
将所需的库打包到jar文件中选项将 org.eclipse.jdt.internal.jarinjarloader 包的类放入生成的文件和这个包就在生成的jar文件的根目录下。由于Eclipse的jar加载器类,此选项还会根据大小创建一个更大的jar文件。

If you want to put jars into your generated jar file, you can use packaging method. For example if you are using an Apache library or some other 3rd party jars, you may want to keep these jars preserved in your generated jar. In this case, use packaging. "Packaging required libraries into a jar file" option puts classes of org.eclipse.jdt.internal.jarinjarloader package into your generated file and this package is just under the root directory of the generated jar file. This option also creates a larger jar file in terms of size due to jar loader classes of Eclipse.

提取所需的库将导致将第三方库的类放入jar中按照包命名约定进行文件,例如如果你打开你的jar内容你可以看到 org.apache .. 包下的一些类。

Extracting required libraries will result in putting classes of 3rd party libraries into your jar file by following the package naming convention, e.g. if you open your jar content you can see some classes under org.apache.. packages.

主类条目这些jar文件的 MANIFEST.MF 文件之间有所不同:

Main class entries are different between the MANIFEST.MF files of these jar files:

包时的主类条目必需的库:

Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader

提取所需库时的主要课程条目:

Main class entry when you extract required libraries:

Main-Class: YourMainClass

这篇关于提取和打包库到jar文件之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆