나는 독점적 인 sun. *. OperatingSystemMXBean을 사용하는 코드를 가지고 있으므로 조심하고있다. 그러나 이 코드는 왜 컴파일되지만 런타임은 ClassNotFoundException입니까?
try {
_osBean = (com.sun.management.OperatingSystemMXBean) java.lang.management.ManagementFactory.getOperatingSystemMXBean();
}
catch (ClassCastException e) {
_osBean = null;
}
,이 코드는 IBM JVM에서 실행하는 대신
ClassCastException
, 나는 런타임
ClassNotFoundException
를 얻을. 왜이 코드는 그 클래스가 사용 가능하지 않고 JVM이 이런 식으로 어떻게 영향을 주는지 잘 컴파일 할 수 있습니까?
오라클 컴파일러로 컴파일하고 IBM JVM에서 실행할 경우 발생할 수 있습니다. – assylias
** ** 모든 com.sun. * 클래스는 사용하지 마십시오. – fge
@fge - 강력한 단어. 차라리 조심스럽게 전개 환경을 이해하고 가능할 때마다 정상적으로 후퇴해야한다고 말하고 싶습니다. –