
[英]Do I need to install JVM on each operating system to run java software or java compiled file.?
[英]Why do I need JVM to run an AOT compiled code?
提示:本站为国内最大中英文翻译问答网站,提供中英文对照查看,鼠标放在中文字句上可显示英文原文。
我正在学习 GraalVM 和 AOT,我正在阅读AOT 的规范,然后我感到困惑,如果 AOT 将我的代码编译为机器代码(本机),为什么我需要 JVM?
为什么我需要这个:
java -XX:AOTLibrary=./libHelloWorld.so HelloWorld
您仍然需要 JVM,因为您只是将一小部分(即“您的 HelloWorld”)编译为本机代码。 您仍然需要大量的 JVM 来运行您的程序。 例如 Java 标准库(您还没有编译成本机代码)、class 加载、程序入口点检测(找到您的主要方法)和垃圾收集。 这一切都是由JVM提供的。
简而言之,您只是将一个库(程序的一小部分)编译为本机代码。 您不会将完整的程序编译为本机代码。
JEP295 的摘要也说明了这一点:
概括
在启动虚拟机之前将 Java 类编译为本机代码。
我认为您真正想要做的是编译程序的本机映像。 这将包括所有含义,例如从 JVM 到可执行文件的垃圾收集。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.