gpt4 book ai didi

java - WildFly 看不到 OperatingSystemMXBean?

转载 作者:行者123 更新时间:2023-11-30 06:06:35 29 4
gpt4 key购买 nike

我有这段代码来读取物理内存:

com.sun.management.OperatingSystemMXBean os = (com.sun.management.OperatingSystemMXBean)ManagementFactory.getOperatingSystemMXBean();
long physicalMemorySize =os.getTotalPhysicalMemorySize();
System.out.println("physicalMemorySize="+physicalMemorySize);

我有 JDK 1.8.0_121(64 位,在 Windows 上)
这段代码编译没有问题,我可以在控制台应用程序中运行它,它运行正常。
但是当我把这段代码放到 WildFly 10 服务器上的某个 Bean 或 JSP 页面时,它显示错误:

Caused by: java.lang.ClassNotFoundException: com.sun.management.OperatingSystemMXBean

WildFly 使用完全相同的 JDK,因此它应该像控制台应用程序一样看到这个类。
该类位于 jdk1.8.0_121\jre\lib\rt.jar 中,所以我不明白为什么 WildFly 会提示 ClassNotFoundException。

有什么问题?如何让 WildFly 运行该代码?

最佳答案

这可以通过在您的 jboss-deployment-structure.xml 中使用类似这样的内容显式包含 com.sun.management 类来解决:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>
<dependencies>
<system>
<paths>
<path name="com/sun/management"/>
</paths>
</system>
</dependencies>
</deployment>
</jboss-deployment-structure>

关于java - WildFly 看不到 OperatingSystemMXBean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43736945/

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