0

我想在我使用sun.misc.BASE64Decoder类的 XPage 中解码 Base64 字符串。但根据 Java开发人员的说法,不应编写调用“sun”包的程序。当我偶然发现com.ibm.misc.BASE64Decoder. 它对我有用,结果与sun.misc.BASE64Decoder. 所以我想知道开发人员使用这个包及其类是否可以?还是像“sun”包一样要避免?

我也知道我可以将Apache Commons用于 Base64,但我想尽量减少对外部 JAR 的依赖。

4

1 回答 1

4

你会遇到与withcom.ibm.misc.BASE64Decoder完全相同的问题sun.misc.BASE64Decoder:它是一个内部类,只存在于特定的 JVM 实现中,在这种情况下是 IBM 的 JVM。

注意com.ibm.misc.BASE64DecoderOracle 的JVM 中没有,所以如果你使用这个类,你的程序就不能在Oracle 的JVM 上运行;它将失败并带有NoClassDefFoundError.

您可以使用 mre 在他的评论中引用的方法,该方法位于类中javax.xml.bind.DatatypeConverter- JAXB API 的一部分,它是标准 Java API 的一部分(自 Java SE 6 起)。

于 2013-01-18T14:56:48.850 回答