无法在RDi 9.5(64位)上找到com.sun.security.auth.module.NTSystem.NTSystem类JRE 1.8

问题描述:

我能够检查提供的用户是系统管理员还是不是在具有JRE 1.6的Windows计算机上无法在RDi 9.5(64位)上找到com.sun.security.auth.module.NTSystem.NTSystem类JRE 1.8

String groups[] = (new com.sun.security.auth.module.NTSystem()).getGroupIDs(); 
for (int i = 0; i < groups.length; i++) 
{ 
    if ("S-1-5-32-544".equals(groups[i])) 
    { 
     return true; 
    } 
} 

编号:http://www.rgagnon.com/javadetails/java-check-if-current-user-is-admin-(windows).html

但这类NTSystem不适用于IBM RDI 9.5(64位)JRE 1.8。 即使是完整的软件包不可即

com.sun.security.auth。*

任何想法,如何做到上述任务RDI 9.5(64位)JRE 1.8? ?

您应该在您的JRE中具有必需的JAR(rt.jar),它是JRE的一部分。

如果它可用并且仍然无法查看这些类,那么您应该为IBM RDi设置适当的运行时间。

+0

不,不能捆绑JRE,因为它的使用限制,只RDI捆绑的JRE,可用上 “/IBM/SDP/jdk/rt.jar” 。 – Kishore

通过使用JNA库得到了我的问题的完美解决方案。

http://www.rgagnon.com/javadetails/java-detect-if-current-user-is-admin-using-jna.html

甲骨文表示,JDK8正在改变太阳。*类

在阳光下的API。*包发生了变化。这些API不是 ,供开发人员使用。 从sun进口的开发人员* 包装会自行承担风险。有关更多详细信息,请参阅 了解为什么开发人员不应编写称为“太阳”软件包的程序。 http://www.oracle.com/technetwork/java/faq-sun-packages-142232.html

源: http://www.oracle.com/technetwork/java/javase/8-compatibility-guide-2156366.html

+0

好信息Marcin – Kishore