java - Java 虚拟机可以在 WinRT 上运行吗?

标签 java jvm windows-runtime

这似乎是一个简单的问题,但我找不到有意义的答案,只有很多猜测。

另外,如果答案是肯定的,那么它会是哪个 JVM,Oracle 的还是 Microsoft 修补的东西?

具体来说:我有一个在 JRE 7 上运行的 Java 桌面应用程序,它可以在 WinRT 上运行吗? 我的意思是,我可以在 WinRT 上安装 JRE 7 吗?它运行起来不会有问题吗?

最佳答案

是和否。

使用 Windows 运行时 API 和可从 Windows 应用商店应用程序使用的 Windows API 部分,当然可以实现 Java 虚拟机,或者至少是其中的很大一部分。然而,这样的 JVM 需要是解释型 JVM,而不是 JIT 编译型 JVM。 JIT 编译需要能够更改内存保护(以允许执行生成的代码),但更改内存保护的 API(VirtualProtect 等)无法从 Windows 应用商店应用中的用户代码调用。

那么,您可以实现一个可在 Windows 应用商店应用程序中使用的解释型 JVM 吗?大概。不过,是否有可能实现一个性能足够好、可用的 JVM 完全是另一回事。

关于java - Java 虚拟机可以在 WinRT 上运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13957609/

相关文章:

java - 将 JVM 参数放在一个文件中,以便在运行时获取

java - 为什么不加密 Java 字节码而不是混淆它呢?

c# - 将 ThumbToolTip 添加到 slider

javascript - Windows 应用商店应用程序中未显示多个 Javascript 警报

java - 是否可以知道 serialVersionUID 是否自动生成?

java - 为什么每个解决方案(或基因型)有一个以上的染色体?

java - 使用 Applet 或 Java Web Start 将 Java 桌面应用程序转换为 Web

java - 在 Hibernate 中重新附加和操作分离的实例 (JPA)

java - System.identityHashCode() 对象被 GC 后是否可以返回相同的 hashCode

java - 使用 JNA 从 Java 调用 Windows UWP API