繁体   English   中英

Java Eclipse:作为JAR导出和作为Runnable JAR导出之间的区别

[英]Java Eclipse: Difference between exporting as a JAR and exporting as a Runnable JAR

导出为JAR文件和导出为Runnable JAR文件之间的eclipse有什么区别? 他们都不是可以运行的吗? 每个的优点/缺点是什么?

可运行的jar包含一个MANIFEST.MF文件,该文件定义了运行jar时要执行的Main类。

不可运行的jar只是类的库,可以添加到类路径中以便重用代码(它还包含清单文件,但没有主类)

可运行的jar是一个jar文件,它有一个包含“Main-Class:”声明的嵌入式Manifest文件。 必须定义“Main-Class”,以便java运行时知道jar“运行”时要调用的类。 如果jar不包含带有“Main-Class:”的清单,则它不被视为“可运行的jar” - 它只是一个Java代码库。

我猜这是Eclipse导出jar的方式不同,但不是100%肯定。

有关详细信息,请参阅此链接: http//www.skylit.com/javamethods/faqs/createjar.html

使用标准JAR文件时,必须在运行jar时在命令行上使用main方法指定类。 使用可运行的JAR,有一个清单文件可以保存该信息,因此您只需键入java -jar myRunnable.jar ,或者只需双击即可。

在我的情况下,当我拥有所有主类和manifest.mf中指定的所有库路径目录时,我曾经导出为jar。 如果许多应用程序使用相同的库,则不必为每个jar导出共享库。 它使运行jar更快。 但是,很多时候由于不同服务器类路径中的配置问题无法访问库,在这种情况下导出运行缓慢执行文件的runnable jar是有意义的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM