Discuss / Java / 在win64上打包得到的JRE,是不是无法在linux上解压后运行呢?

在win64上打包得到的JRE,是不是无法在linux上解压后运行呢?

Topic source

Young-96

#1 Created at ... [Delete] [Delete and Lock User]

在win64上打包得到的JRE,是不是无法在linux上解压后运行呢?

小草爱恋

#2 Created at ... [Delete] [Delete and Lock User]

可以运行,因为它里面内置了JVM,它会在根据LINUX的特性去运行的

廖雪峰

#3 Created at ... [Delete] [Delete and Lock User]

自己试一下

jvm 就是个可执行文件,不同系统格式都不同,打包得到的jre肯定里面的jvm也不同,不可能跨平台的。

不同操作系统的Java虚拟机是不一样的,例如windows平台的Java虚拟机启动文件是bin目录下的java.exe文件,而linux系统是java.sh文件,windows系统执行不了.sh文件,linux系统也执行不了.exe文件,因此Java虚拟机是不能跨平台运行的。但是lib目录下的class文件是通用的,这也是Java“一次编译多处运行”的由来,即只需一次性将.java文件编译为.class文件,.class文件就可以运行在适用于各种系统的Java虚拟机上。总结:class文件是跨平台的,Java虚拟机不是

世风冶行

#6 Created at ... [Delete] [Delete and Lock User]

楼上“天空之城_dsfsdf”说的是对的。我实际操作了一下,Windows下编译的JRE放到Linux下无法执行java.exe文件


  • 1

Reply