gpt4 book ai didi

java - 在 chroot 中运行 Java 应用程序**没有**/proc 安装

转载 作者:太空宇宙 更新时间:2023-11-04 12:42:11 27 4
gpt4 key购买 nike

我正在尝试在未安装/proc 的 chroot 环境中构建 java 应用程序(调用 javac)。 Javac 在发出以下警告后挂起:

Java HotSpot(TM) 64 位服务器 VM 警告:无法检测初始线程堆栈位置 - find_vma 失败

我不知道这个警告是否与挂起有关,但它一直被记录下来。我查看了jvm源代码,我可以理解这个警告的含义(在尝试查找主线程的堆栈基数时/proc/self/maps不可用)。

应该注意的是,有时我会崩溃而不是挂起,但大多数时候它都会挂起。

我想知道是否有人让java在没有安装/proc的情况下工作。所有可用的文献都建议安装/proc。

最佳答案

我认为一般情况下您会希望/proc 安装在您的 chroot 环境中...一般来说,在 Linux 中/proc 用于存储进程信息以及对各种进程有用的系统信息。 JVM 做了很多“神奇”的事情,因为它也是一个虚拟机,因此它需要大量有关进程及其正在执行的操作的信息,因此如果没有 proc,它就无法工作也就不足为奇了。

根据我所读到的有关 OpenJDK 的 JVM 如何工作的内容,对于 Unix(类似)系统,它们使用 procfs 来获取信息。所以这似乎是强制性的。

您认为您不想要/proc 有什么原因吗?

关于java - 在 chroot 中运行 Java 应用程序**没有**/proc 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36724077/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com