Java 无法从外部包访问错误

标签 java sigar

CpuPerc() 在 CpuPerc 中不是公开的;无法从外部包访问

...

import org.hyperic.sigar.*;
import org.hyperic.sigar.Cpu;
import org.hyperic.sigar.CpuPerc;

/**
 *
 * @author John
 */

public class GetCpu {
    public void Start() {
            Sigar sigar = new Sigar();
            CpuPerc perc = new CpuPerc();
            System.out.println(getCpuPerc()); // error appears here

    }
}

这个错误是什么以及如何修复它。我正在使用 SIGAR API。

最佳答案

错误消息告诉您实例 CpuPerc 并不打算通过这种方式获取 ( package-private constructor )。 getCpuPercSigar 的实例方法,它返回所需的实例。

Sigar sigar = new Sigar();
CpuPerc perc = sigar.getCpuPerc();
System.out.println(perc.getCpuPerc());

关于Java 无法从外部包访问错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21660165/

相关文章:

Java 可变长度参数与数组,简单的语法糖?

java - 在gradle依赖项和Java项目中导入AWS Textract

java - 如何添加 <fx :root> component as a child in FXML?

java - 无法使用 sigar 获取处理时间

java - 如何使用 Hyperic Sigar 获取 CPU ID 或序列号?

java - 如何构建依赖于另一个项目的 Gradle 项目,但使本地路径不受版本控制?

java - 在编码期间忽略元素而不使用 @XmlTransient

java - 什么类型的参数是 mdDeviceStatusInactive,mdDeviceStatusUnexported 等...

java - java中sigar如何计算机器位模式

java - 使用 Hyperic SIGAR 获取 Java 中的系统进程列表