![在 Solaris 9 容器中运行 Java 的问题](https://linux22.com/image/500746/%E5%9C%A8%20Solaris%209%20%E5%AE%B9%E5%99%A8%E4%B8%AD%E8%BF%90%E8%A1%8C%20Java%20%E7%9A%84%E9%97%AE%E9%A2%98.png)
我有一个使用 flarcreate 从物理服务器构建的 solaris 9 容器。一切似乎都很好,但尝试运行任何“java -server”进程时,它会失败并出现以下错误
这是在运行 Sunfire T1000 的机器上Solaris 10 10/09 s10s_u8wos_08a SPARC 运行 jdk1.5.0_15
异常 java.lang.OutOfMemoryError:在 /BUILD_AREA/jdk1.5.0_15/hotspot/src/os/solaris/vm/os_solaris.cpp 中为 size_t 请求了 -4 个字节。交换空间不足?
据我所知,我实际上并没有用完交换空间。
在客户端模式下运行 java 没有任何问题。
Google 唯一的建议与 x86 相关。
有什么建议么?
谢谢。
答案1
我发现重新部署 java 可以解决此类错误。
答案2
这是因为更新级别与 Solaris 系统在托管容器的 Solaris 10 系统上的补丁级别支持上创建的初始系统不同。Sun 的补丁已修复此问题,但您需要一份支持合同才能获得它。我花了几个小时来修复此问题,但没有支持合同就无法找到解决方案。
请让我知道它是否对您有用。