是否有任何Java 8支持的SqlJ版本?

问题描述 投票:5回答:2

其实我收到一个错误:

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

这是因为在Java 8中,CharToByteConverter类已被弃用,因为它已被弃用。

现在我想知道任何替代这个包/类并提供其功能而不抛出上述异常的替代方法。

这个类用在SQLJ中

Translator.jar 

它里面是

sqlj.util.io.OracleOutputStream.class

编辑:如果我用java.nio.charset类替换CharToByteConverter类,SQLJ可能仍然无法检测到它。如果我错了,请纠正我。让我知道如果用java.nio.charset替换CharToByteConverter可能会解决这个问题吗?

java classnotfoundexception sqlj
2个回答
0
投票

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


-2
投票

javadoc评论说明了一切:

不推荐使用!替换 - 由java.nio.charset

在java.nio.charset包中查找替换类/方法。

请注意,首先使用JDK中不属于官方文档API的类是一个坏主意

© www.soinside.com 2019 - 2024. All rights reserved.