其实我得到一个错误:

Exception in thread "main" java.lang.NoClassDefFoundError:sun/io/CharToByteConverter

这是因为在Java 8中,不推荐使用CharToByteConverter类,因此已将其删除。

现在,我想知道可以替代此包/类并提供其功能而不会引发上述异常的任何替代方法。

此类用于SQLJ
Translator.jar

在里面
sqlj.util.io.OracleOutputStream.class

编辑:
如果将CharToByteConverter类替换为java.nio.charset类,SQLJ仍可能无法检测到它。如果我错了,请纠正我。并且让我知道用java.nio.charset替换CharToByteConverter是否可以解决该问题?

最佳答案

这是一个老问题,但直到今天对我来说也是一个问题。因此,也许其他人可能会从该信息中受益,Oracle对此有一个错误#21315718,其中包含解决方案:
“Translator.jar和runtime12.jar与JDK 8不兼容。
未发布的Bug 21315718中报告了该问题-sqlj转换器不适用于jdk8。”
升级这两个jar之后,SQLJ并没有为我引发上述错误。

07-24 09:49
查看更多