Java 如果JRE是';我的项目中引用并打包了哪些内容?

Java 如果JRE是';我的项目中引用并打包了哪些内容?,java,Java,我将我的项目导出到一个可执行jar中,并注意到eclipse还打包了我使用的外部jar。当试图在另一台机器(没有安装JRE)上运行它时,它失败了,并给出了缺少JRE的原因。那么,我的项目中引用的JRE与我收到错误消息后从Oracle安装的JRE之间有什么区别呢?JRE不仅仅是您所引用的库,而是整个JVM。此外,JRE也不会包含在“外部JAR”中。通常假设Java应用程序的目标已经安装了Java—通常情况下,您不想将整个JRE捆绑在一起 有些打包应用程序会将JRE与您的应用程序捆绑在一起,但请记住

我将我的项目导出到一个可执行jar中,并注意到eclipse还打包了我使用的外部jar。当试图在另一台机器(没有安装JRE)上运行它时,它失败了,并给出了缺少JRE的原因。那么,我的项目中引用的JRE与我收到错误消息后从Oracle安装的JRE之间有什么区别呢?

JRE不仅仅是您所引用的库,而是整个JVM。此外,JRE也不会包含在“外部JAR”中。通常假设Java应用程序的目标已经安装了Java—通常情况下,您不想将整个JRE捆绑在一起

有些打包应用程序会将JRE与您的应用程序捆绑在一起,但请记住,对于每个目标平台(OSX、Linux、Windows以及各种CPU体系结构),您将有一个单独的安装程序


我建议您查看为您创建的jar文件—您可以将其重命名为
.zip
文件,并使用普通的zip文件实用程序进行浏览—然后将其大小与JRE的大小进行比较。除非您使用的是大量的外部库,否则我强烈怀疑您会发现您的应用程序比完整的JRE小得多。

JRE不仅仅是您所指的库,而是整个JVM。此外,JRE也不会包含在“外部JAR”中。通常假设Java应用程序的目标已经安装了Java—通常情况下,您不想将整个JRE捆绑在一起

有些打包应用程序会将JRE与您的应用程序捆绑在一起,但请记住,对于每个目标平台(OSX、Linux、Windows以及各种CPU体系结构),您将有一个单独的安装程序


我建议您查看为您创建的jar文件—您可以将其重命名为
.zip
文件,并使用普通的zip文件实用程序进行浏览—然后将其大小与JRE的大小进行比较。除非您使用的是一组非常大的外部库,我强烈怀疑您会发现您的应用程序比完整的JRE小得多。

@peeskillet:问题根本没有提到JDK。@peeskillet:问题根本没有提到JDK。我每天都在追求变得不那么愚蠢。@PeterLawrey:这是假设x86/x64。。。在某些情况下,有各种各样的手臂等等。@Shmoopy你永远不会停止学习。我学的越多,我知道的就越少。我每天都在努力变得不那么愚蠢。@PeterLawrey:这是假设x86/x64。。。在某些情况下,有各种各样的手臂等等。@Shmoopy你永远不会停止学习。我学的越多,知道的就越少。